Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(170)

Unified Diff: net/cert/ct_serialization_unittest.cc

Issue 230713002: Certificate Transparency: Parse Signed Tree Heads and validate them (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Explicitly exporting symbol Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/cert/ct_serialization_unittest.cc
diff --git a/net/cert/ct_serialization_unittest.cc b/net/cert/ct_serialization_unittest.cc
index 934cdb38a6000b138befbda0750485662b734a65..989b58c78f2714b18dc03bf66414a618769458c0 100644
--- a/net/cert/ct_serialization_unittest.cc
+++ b/net/cert/ct_serialization_unittest.cc
@@ -162,5 +162,23 @@ TEST_F(CtSerializationTest, FailsDecodingInvalidSignedCertificateTimestamp) {
ct::DecodeSignedCertificateTimestamp(&invalid_length_sct, &sct));
}
+TEST_F(CtSerializationTest, EncodesValidSignedTreeHead) {
+ ct::SignedTreeHead sth;
+ GetSignedTreeHead(&sth);
Ryan Sleevi 2014/04/25 23:33:19 tree_head/signed_tree_head
Eran Messeri 2014/04/29 15:22:24 Done.
+
+ std::string encoded;
+ ct::EncodeTreeHeadSignature(sth, &encoded);
+ // Expected size is 50 bytes:
+ // Byte 0 is version, byte 1 is signature type
+ // Bytes 2-9 are timestamp
+ // Bytes 10-17 are tree size
+ // Bytes 18-49 are sha256 root hash
+ ASSERT_EQ(50u, encoded.length());
+ std::string expected_buffer(
+ "\x0\x1\x0\x0\x1\x45\x3c\x5f\xb8\x35\x0\x0\x0\x0\x0\x0\x0\x15", 18);
+ expected_buffer.append(ct::GetSampleSTHSha256RootHash());
+ ASSERT_EQ(expected_buffer, encoded);
+}
+
} // namespace net

Powered by Google App Engine
This is Rietveld 408576698