linphone-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Linphone-developers] Testing AES3 with EC and B256 on Android


From: Peter Villeneuve
Subject: [Linphone-developers] Testing AES3 with EC and B256 on Android
Date: Sat, 25 Apr 2015 20:00:49 +0100

Hi guys,

I just downloaded latest git and compiled from scratch.

I have applied to my linphonerc_factory the following configs taken from here https://lists.gnu.org/archive/html/linphone-developers/2015-03/msg00022.html

At the end of my linphonerc_factory I have added

zrtp_key_agreements_suites=MS_ZRTP_KEY_AGREEMENT_EC38
zrtp_cipher_suites=MS_ZRTP_CIPHER_AES3
zrtp_auth_suites=MS_ZRTP_AUTHTAG_HS80
zrtp_hash_suites=MS_ZRTP_HASH_S256
zrtp_sas_suites=MS_ZRTP_SAS_B256


So far so good. Everything compiles fine and when I run the apk on two different phones I'm able to establish audio and negotiate ZRTP as expected.

However, I have enabled debugging and looking through logcat it seems that the cipher suite used is still AES1. Also, the key negotiation seems to be DH instead of EC.

Here are the relevant bits from the logfile:

04-25 17:14:09.609 I/linphone(5863): Configured srtp crypto suite: AES_CM_128_HMAC_SHA1_80 
04-25 17:14:09.609 I/linphone(5863): Configured srtp crypto suite: AES_CM_128_HMAC_SHA1_32 
04-25 17:14:09.609 I/linphone(5863): Configured srtp crypto suite: AES_CM_256_HMAC_SHA1_80 
04-25 17:14:09.609 I/linphone(5863): Configured srtp crypto suite: AES_CM_256_HMAC_SHA1_32 
04-25 17:14:09.609 I/linphone(5863): Creating ZRTP engine on rtp session [0x582de150]


and later after the call is established and the key is negotiated:

04-25 17:14:11.484 I/linphone(5863): New call state [UpdatedByRemote]
04-25 17:14:11.484 I/linphone(5863): ZRTP Receive packet type DHPart2 
04-25 17:14:11.544 I/linphone(5863): ZRTP Send packet type Confirm1 on rtp session [0x582de150]
04-25 17:14:11.544 W/linphone(5863): MSAudio MSTicker: We are late of 54 miliseconds.
04-25 17:14:11.559 I/linphone(5863): ZRTP Receive packet type DHPart2 
04-25 17:14:11.564 I/linphone(5863): ZRTP Send packet type Confirm1 on rtp session [0x582de150]
04-25 17:14:11.574 I/linphone(5863): ZRTP Receive packet type Confirm2
04-25 17:14:11.574 I/linphone(5863): ZRTP secrets are ready for receiver; auth tag algo is HS80 and cipher algo is AES128
04-25 17:14:11.574 I/linphone(5863): media_stream_set_srtp_recv_key(): key 45..a2 stream sessions is [0x58e0be98]
04-25 17:14:11.574 I/linphone(5863): media_stream_set_srtcp_recv_key(): key 45..a2 stream sessions is [0x58e0be98]
04-25 17:14:11.574 I/linphone(5863): ZRTP Send packet type Conf2ACK on rtp session [0x582de150]
04-25 17:14:11.579 I/linphone(5863): ZRTP secrets are ready for sender; auth tag algo is HS80 and cipher algo is AES128
04-25 17:14:11.579 I/linphone(5863): media_stream_set_srtp_send_key(): key da..8e stream sessions is [0x58e0be98]
04-25 17:14:11.579 I/linphone(5863): media_stream_set_srtcp_send_key(): key da..8e stream sessions is [0x58e0be98]
04-25 17:14:11.579 I/linphone(5863): ZRTP secrets on: SAS is g5hm previously verified yes
04-25 17:14:11.579 I/linphone(5863): Event dispatched to all: secrets are on
04-25 17:14:11.579 E/linphone(5863): srtp_unprotect() failed (7) on stream ctx [0x589d4860]


As you can see, even though I installed the apk on both phones, it seems linphone still chooses to use AES 128 with DH and SAS is still using 4 character SAS instead of B256.
Am I doing anything wrong? How can I test out AES3 and EC with B256 SAS? It would be great if we could see in the call's UI some info regarding what type of algo was negotiated so we don't have to enable debugging and look through the logs to find out this useful info.

Thoughts?

Cheers,

Peter


reply via email to

[Prev in Thread] Current Thread [Next in Thread]