refactor the HKDF State class

Change-Id: I819c9a8dcb7b3b13c1a63269a18ceadfa2b80c50
diff --git a/tests/unit-tests/protocol-detail.t.cpp b/tests/unit-tests/protocol-detail.t.cpp
index e3aa143..e02afaf 100644
--- a/tests/unit-tests/protocol-detail.t.cpp
+++ b/tests/unit-tests/protocol-detail.t.cpp
@@ -77,20 +77,17 @@
   auto cert = key.getDefaultCertificate();
 
   ECDHState ecdhState;
-  auto block = NewRenewRevokeEncoder::encodeApplicationParameters(RequestType::NEW,
-                                                                  ecdhState.getBase64PubKey(),
-                                                                  cert);
-  std::string ecdhPub;
+  auto selfKey = ecdhState.getSelfPubKey();
+  auto block = NewRenewRevokeEncoder::encodeApplicationParameters(RequestType::NEW, selfKey, cert);
+  std::vector<uint8_t> peerKey;
   shared_ptr<security::Certificate> clientCert;
-  NewRenewRevokeEncoder::decodeApplicationParameters(block, RequestType::NEW, ecdhPub, clientCert);
-  BOOST_CHECK_EQUAL(ecdhState.getBase64PubKey(), ecdhPub);
+  NewRenewRevokeEncoder::decodeApplicationParameters(block, RequestType::NEW, peerKey, clientCert);
+  BOOST_CHECK_EQUAL_COLLECTIONS(selfKey.begin(), selfKey.end(), peerKey.begin(), peerKey.end());
   BOOST_CHECK_EQUAL(cert, *clientCert);
 
-  block = NewRenewRevokeEncoder::encodeApplicationParameters(RequestType::REVOKE,
-                                                             ecdhState.getBase64PubKey(),
-                                                             cert);
-  NewRenewRevokeEncoder::decodeApplicationParameters(block, RequestType::REVOKE, ecdhPub, clientCert);
-  BOOST_CHECK_EQUAL(ecdhState.getBase64PubKey(), ecdhPub);
+  block = NewRenewRevokeEncoder::encodeApplicationParameters(RequestType::REVOKE, selfKey, cert);
+  NewRenewRevokeEncoder::decodeApplicationParameters(block, RequestType::REVOKE, peerKey, clientCert);
+  BOOST_CHECK_EQUAL_COLLECTIONS(selfKey.begin(), selfKey.end(), peerKey.begin(), peerKey.end());
   BOOST_CHECK_EQUAL(cert, *clientCert);
 
   // NewRenewRevokeEncoder::encodeDataContent(ecdhState.getBase64PubKey(), "")