Revision control
Copy as Markdown
Other Tools
#test cpuid intel_sm4 gfni armv8sm4
[SM4]
Key = 0123456789abcdeffedcba9876543210
In = 0123456789abcdeffedcba9876543210
Out = 681edf34d206965e86b3e94f536e4246
Iterations = 1000000
Key = 0123456789abcdeffedcba9876543210
In = 0123456789abcdeffedcba9876543210
Out = 595298c7c6fd271f0402f804c33d3f66
# Random tests generated by GmSSL
Key = 681EDF34D206965E86B3E94F536E4246
In = F42131B002425B6F5CF52A810682A09D07BCAE6A8388E14651FED84B3749D386F4762615B32C000A165E1D722D708052BA3C19D8926356ED1491C6E4E528782F
Out = EC4B7B1757FEE9CE455197E5BF9C3A9089F2C41ED97DBB1B74A2AD93B903BBC9F45A41052F9BF3D5B65DF8CC1C75B4CF3E1F30D57DF4B60694F566DE44484FAF
Key = 781EDF34D206965E86B3E94F536E4247
In = 9108957FF917E3D61C4EA33E53DB6EF3CBA0F0567535D66148B35A9258729C23FA598011F7C2100799451E62F3B5CF09BA1F8555B2DDAB0E4E4D8026B05AF38950C63CE25582571AA5D8EE22089C1B59229AD7A8A83C5E2384B4082E50D06EBF
Out = 6A529AC093A5F3045AED787F70CCB7F56346F0E4C59532D418CE315B9F22A0F46255459100958F4D953A9D5667692D6D376FEB0978B52AB9C984A14D7E66F67131FFAF2CAD6549F3D9FCD7F02DF5812476F29E93DDF57932A41E83BB7B61A406
# Random tests generated by Botan
Key = fd0c5fbdb30201222daea461486b2853
In = 000102030405060708090a0b0c0d0e0f
Out = 73f102977f15599c61b15d13d3da6064
Key = e5ab67c47b9be83f1f37627532d91ab7
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
Out = 03a595d9af32aa810aa0beb758462f2c6535e76e4d092a8262f6c17a21d20c12
Key = 2fc554c3ddf11a984db02f38e4681804
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f
Out = ce11ab2440feb161186d0d6d77bff8984b08488dc64ba7b960edbe63675f723ea32ab1f5b0fb3eac519b90cf86ab3c9d
Key = 67e8a8c6d13441b8da0533bf8c3d94e0
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
Out = dec9a094d643d8f601248caf2ed61ff983d0467c44ef48fba558b7b10f5d4101b954f3b1bdc6559349d59b37118f99d32c77f3028200ef3a25124c636e1d8f60
Key = f5f580b4c1a2b700b5bf3d17c602e850
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f
Out = 9c5943c045ca84b45711817b9d9a7d1ef186400f0e2a066284442c506504f4ab094d777f790883bb124d4e79d556af7b76634270c66a7282441a981148a1f3feceeecbcae1eedf87288cfe88845e975d
Key = 5d04b35ddbdfc1e7bbb33eb49ad4323e
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
Out = 1270cf51ec4afc29e18779810422e86b09d0567f2154c4631d079678cbb9e4f35d5eadb03201269a1c9e7b5bf489ac94281cebeead014d5ae0526def1b145d4d598840061bbee5c51f8ef88808be599059ff068c3c5c1de5c0c53bbb5fc76a86
Key = d4eacb38809d8e2baab4d3e7716b4b44
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f
Out = 3e79af4b33773d7d934d8f16f6b82972b7c034491d7a6dd336cc46c88c0d5c11496a7aa274468ae404a2a1a4b4bfa82af072d99401136d7776e81c714ad9145c95e52ff6b03b90969211702974fad827e48879cd75a3cd1d32051bf26b2da8207e5a5aa5959d7fbc2836dd9b40a9e888
Key = 6da5e13170e12ca0af0dc67cc69ee83b
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
Out = 2c3280c0f82558f2fe6731dff2d4ba687b14758cf4e09674b7d6968830e01efa08c56f4befad763fdc2a381982b85ce4ae49d843b9af741da6cd51da1c44a1afbd20160650500986b399d318b397bc60cc565e7d96a27e9790c580e95299cd7dd7a263e414b451ab99cf1822b943eb19c0b87fffc989a38f324b881d05ddb5ff
Key = 85018301ddb3e345835523ac372f0c3f
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f
Out = 63562b267b4f5d56e9f9dc95a44b2f97ecdbdd4d46b35eb734b11128094392fd829045a7a87b4196b48ce8a3bf9123ae78a4df19b10442309309d66375e61587f69efea5bf57ab9f972a39d47f16d0b9842dff60c9d55336a070e969ceba597cc495dde1d215e19da43dc5a5fbc1626731f0fec7e643f7bd74d812a61b3ba05bb8854347187578ac128b278ab587448c
Key = 10bd564a8924c620c3ee60888f60a074
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
Out = 3b58a3f5a95e651df6cba3fbdcbf1d220aa6643073be546aa6e232f02162789688e9537553c4af769cb2226091d7fb5d5cca36aa4bb3730ad99b851f2ef2cd3afd052f2f8f5e61c10a8a315979eeb5a196bd48d64130c48487c716634be3c81a3e01585b26026832efa092dac02d093114f97ef72f6aba4da72f71cbb98a3c6d71bb968319fa1a2aef1ab931b8cef2021fac239c87325a53747ea5bc38830cf1
Key = 4f2146709baa1c7aafe7c16bc8b48d4f
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
Out = e895d57725e9ab542a5b6f9f9d86a4d5a783efce95412be524562370021b1944c37a66312bf8f7f5405765f89432bdf72042da697acf66dfdaec6b709e80e3344747c5461b7a8b32e04ed568c25a3bc95e939ccafb3483de158118131785d798f75f39ae84d7327fe72e67632e4d88e76cc44d0fb7e5850da64d6204ffab7e982d1b018f9ddff017ed06892204495e666340f5ab7fc1e357f7346833af4538358035297b708a95fac00abe6734d2dab6
Key = 358a48df143cb1e3cbabfa0eddc7ff84
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
Out = 4cbf2747c23bd329eb3b70aa9ae926b2c6fbf0c1f40669fbb836e0e3c7ea424253c729ceac5a1c9aa73bd0985b2f08b64375ada3da3323c882f658571108fec2687c70fa143d3274f56fe7359158d768de799b0a6ff99b8930093c83fbc371480dbf52e975c640679a2cfee4b2784fd0975f745cb2931e720669bb72f1d88d13cd064a3cf8c1a8137b7377bcd36ae96c4379de85b0020eb805749f06a99cee7ad806a5aaaf3e806a58d2ccfa0946f0f94207f0e4f1d2e2dd14e9c460a2e56d36
Key = 58489fb104cbe16e1788750fdccd5e22
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecf
Out = dcaa2c81d6b6b229fcf55359c208cc894ded2cfceff2f5835983a2c9db761d2a1f608f5423d8593e1dea03ca2e2d14fe1979af71346613912bd48f075a2469b835401208d88af939a0fc7c7148e76c6b6dcf1c6908acbeeb7286f9315c359c038b3cfe7bbed8a23fffffd81df27a67350917105b5644161dc4c21e17df7db75e47d09985d7caeeb7d3654a468144ceebe213e1be7bd1ccaade58af0054d598ff9599a3f00cb586ab31f9f994970f5d74d48019f4bc427af140a0d89f785155bd7b55d5850e0fe436e9252123879421de
Key = e2e9eff5697915ca2472fa630b5614ca
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
Out = 5c85b3a7cca40fe8a68f39d8df624fbae149f3e3b9bfb5ed4c3ea86109ef8574852c30a517a2235d44e2791767eed5601c2777449eb4463cd97123e5d8a013c0e5bcd02497b7ef076a7c858698cafb1f8b62cdd980d00d6f9b8675ced4566fd78a5336852d1e97e92fedfe3623da821b351e894963c801c329fd4371ccbc5d440acf88b69d22b4db7d87c146413b13f961de987179cfd20787395ff8d621272c99f9578e23aa5b17d82e33ca55ba5e7bb729529eeef16593b0830b62dca3c7050ed48c4be0d7ada85ca5ba69069e95ad6000c718e299d38dc9b4390e7c73254d
Key = ba834c7b1c3dc6a42edcffeafc82e248
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeef
Out = 2092901cbf7860de3d6b8e2a5f0eadd4cd5e82704cf014751b802db82fc56ed68d97b7e83187a60ef37d45f564fdef13566036b13a1f5b86e2393f16bb8921f5012a3d06c68f705cbb20acda7eeb52d8394f29e8e52055de049143208c18e64047dff250f0d59afb5f3ddba16401e999309acd9a68548a24dfe393bc580e3dd9d184eac89717fc521cd6955fe05522e7dad7658c5d73456dd026a44001269293140ad18de94361712145ba32717ec4bda05ad7b31b1eb6ab715be8b3f5866e8fb75465e183486a2746926141582213d254c7d79902d0952b2cadec9c51a94bdbdba6b75cf40795db9fb89df7273bb10a
Key = fb6d97987e9fd25c658fbb570751c174
In = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
Out = 8017c5440e56ee8da14ea4962e2303ab17982c9927c1fab9b96115900476b9654477db66b40bd3b30012d4b13cebec3667c5547c4374127be8d5c25d5c1cd838d4acf258cff24329e404ebdf94a5c6add8934ad73432f8cf55e775f28d8009dafd1c877aa98e30063f92e17545b92f735f7819d4974a645d9de07ab30535be135632c5140e2e78392c97b1bd9a757caf71090eb46febc05561eb0281fcb792b194feebaa342aa3368163a16ea73c647bb5c75b2b0fdc97cf81ec38b22607b267b383f828521180c6bb49c1b5fb8e38cf5598cd0cd399693722235aed362d20ff4ee8e3fa5843fff8acbdc7cf1860f02841bf274d06e57fdc3adbda0acdff8305