PHPとjavascriptについて話しているので、HTTP(REST)APIについて話していると思います。その場合、私はほとんどの場合、標準のHTTP認証を使用することを主張します。これにより、BASE64でエンコードされたユーザー名とパスワードが送信されます。これは暗号化されているように見えるかもしれませんが、名前が示すように、単なるエンコーディングです。したがって、安全ではありません。安全にそれが必要な場合は、HTTPSを使用することを強くお勧めします。
見て:
PHPでのHTTP認証
関連基準
編集:要求に応じて、これがどのように機能するかについての短い要約。長い(そしてやや読みにくい)標準では、サーバーはクライアントに自身の認証を要求できます。次に、クライアントはユーザー名とパスワード(username:passwordのベース64エンコードバージョン)をサーバーに送信します。この基本HTTP認証は標準で指定されているため、非常に広く普及しており、ほぼすべての言語で多数のライブラリが使用されています。ただし、前述のように、HTTPSで使用することを強くお勧めします。それ以外の場合は、ユーザーのパスワードをインターネットに公開するだけです。
私は標準のHTTP認証を使用することに強く賛成ですが、他の概念も検討することをお勧めします:OAuth、apikeys、Amazon Stuff