Php 使用libnaid进行安全密钥交换
我想做一个测试应用程序,它使用libnaid从客户机到服务器进行通信 有多种语言的多个端口: , 还有一个例子是“鲍勃”和“爱丽丝”。 这很好,但是他们从来没有展示过如何以安全的方式在网络上交换公钥 那么,建议如何将公钥交换为“alice/client”和“bob/server” 它们总是使用相同的文件或相同的机器来生成密钥对 以下是libnaid php扩展的摘录:Php 使用libnaid进行安全密钥交换,php,cryptography,libsodium,nacl-cryptography,Php,Cryptography,Libsodium,Nacl Cryptography,我想做一个测试应用程序,它使用libnaid从客户机到服务器进行通信 有多种语言的多个端口: , 还有一个例子是“鲍勃”和“爱丽丝”。 这很好,但是他们从来没有展示过如何以安全的方式在网络上交换公钥 那么,建议如何将公钥交换为“alice/client”和“bob/server” 它们总是使用相同的文件或相同的机器来生成密钥对 以下是libnaid php扩展的摘录: $alice_kp = crypto_box_keypair(); $alice_secretkey = crypto_box
$alice_kp = crypto_box_keypair();
$alice_secretkey = crypto_box_secretkey($alice_kp);
$alice_publickey = crypto_box_publickey($alice_kp);
$bob_kp = crypto_box_keypair();
$bob_secretkey = crypto_box_secretkey($bob_kp);
$bob_publickey = crypto_box_publickey($bob_kp);
$alice_to_bob_kp = crypto_box_keypair_from_secretkey_and_publickey
($alice_secretkey, $bob_publickey);
$bob_to_alice_kp = crypto_box_keypair_from_secretkey_and_publickey
($bob_secretkey, $alice_publickey);
$alice_to_bob_message_nonce = randombytes_buf(CRYPTO_BOX_NONCEBYTES);
$alice_to_bob_ciphertext = crypto_box('Hi, this is Alice',
$alice_to_bob_message_nonce,
$alice_to_bob_kp);
$alice_message_decrypted_by_bob = crypto_box_open($alice_to_bob_ciphertext,
$alice_to_bob_message_nonce,
$bob_to_alice_kp);
$bob_to_alice_message_nonce = randombytes_buf(CRYPTO_BOX_NONCEBYTES);
$bob_to_alice_ciphertext = crypto_box('Hi Alice! This is Bob',
$bob_to_alice_message_nonce,
$bob_to_alice_kp);
$bob_message_decrypted_by_alice = crypto_box_open($bob_to_alice_ciphertext,
$bob_to_alice_message_nonce,
$alice_to_bob_kp);
LibNadium不提供任何直接密钥交换方法。您可以通过几种不同的方式安全地进行密钥交换: