1. 程式人生 > >ZeroMQ介面函式之 :zmq_curve – 安全的認證方式和保密方式

ZeroMQ介面函式之 :zmq_curve – 安全的認證方式和保密方式

zmq_curve(7)     ØMQ Manual - ØMQ/4.1.0

Name

zmq_curve – 安全的認證方式和保密方式

Synopsis

CURVE機制定義了一種安全的認證方式和保密方式,用於客戶端和伺服器之間的交流。CURVE 計劃用於工作在公網上。CURVE機制在RFC文件  中進行了定義。

客戶端和伺服器的任務

一個使用CURVE的socket在任何時候既可以是客戶端也可以說伺服器,但不能同時兼任兩者。bind/connect的任務是獨立進行的。

一個socket可以在任意時刻通過修改屬性來改變工作方式。工作方式的改變會影響在改變之後呼叫的所有zmq_bind和zmq_connect函式。

想要使一個socket作為CURVE服務端使用,應用程序需要設定socket的ZMQ_CURVE_SERVER屬性,然後設定ZMQ_CURVE_SECRETKEY屬性來為這個socket提供長期有效的密碼。應用程序不需要提供給這個socket長期的公共金鑰,這個金鑰只在客戶端使用。

想要使一個socket作為CURVE客戶端使用,應用程式需要使用這個socket想要連線到的服務端的長期公鑰設定自己的ZMQ_CURVE_SERVERKEY屬性;或者緊接著接受到來的連線請求。然後,應用程式用它的客戶端的長期金鑰對設定ZMQ_CURVE_PUBLICKEY 和ZMQ_CURVE_SECRETKEY屬性。

如果服務端要使用認證方式,那麼它將基於客戶端的長期有效公鑰。

Key encoding

在原始碼中,金鑰的標準形式是基於base 256(二進位制資料)的32B資料,或者使用Z85演算法生成的基於base 85的40B的資料,Z85演算法在RFC文件 http://rfc.zeromq.org/spec:32 中進行了定義。

Test key values

作為測試,服務端使用下面這個長時有效金鑰對(以Z85加密的16進製表示):

公鑰:

BB88471D65E2659B30C55A5321CEBB5AAB2B70A398645C26DCA2B2FCB43FC518

[email protected]

$w-vo<fVvi]a<NY6T1ed:M$fCG*[IaLV{hID

金鑰:

7BB864B489AFA3671FBE69101F94B38972F24816DFB01B51656B3FEC8DFD0888

D:)Q[IlAW!ahhC2ac:9*A}h:p?([4%wOTJ%JR%cs

服務端將使用下面的金鑰對(以Z85加密的16進製表示):

公鑰:

54FCBA24E93249969316FB617C872BB0C1D1FF14800427C594CBFACF1BC2D652

rq:rM>}[email protected]%[email protected]%FcmmsL\/@{H8]yf7

金鑰:

8E0BDD697628B91D8F245587EE95C5B04D48963F79259877B49CD9063AEAD3B7

JTKVSB%%)wK0E.X)V>+}o?pNmC{O&4W4b!Ni{Lh6

See also

zmq_z85_encode(3)  zmq_z85_decode(3)  zmq_setsockopt(3)  zmq_null(7)  zmq_plain(7)  zmq(7)

Authors

This page was written by the ØMQ community. To make a change please read the ØMQ Contribution Policy at http://www.zeromq.org/docs:contributing.

Web site design and content is copyright (c) 2007-2012 iMatix Corporation. Contact us for professional support. Site content licensed under the Creative Commons Attribution-Share Alike 3.0 License. ØMQ is copyright (c) Copyright (c) 2007-2012 iMatix Corporation and Contributors. ØMQ is free software licensed under the LGPL. ØMQ, ZeroMQ, and 0MQ are trademarks of iMatix Corporation. Terms of Use — Privacy

Policy

翻譯:風波

mail : [email protected]