1 # 2 # Copyright 2001-2024 The OpenSSL Project Authors. All Rights Reserved. 3 # 4 # Licensed under the Apache License 2.0 (the "License"). You may not use 5 # this file except in compliance with the License. You can obtain a copy 6 # in the file LICENSE in the source distribution or at 7 # https://www.openssl.org/source/license.html 8 9 Title = SM4 test vectors from IETF draft-ribose-cfrg-sm4 10 11 Cipher = SM4-ECB 12 Key = 0123456789ABCDEFFEDCBA9876543210 13 Plaintext = 0123456789ABCDEFFEDCBA9876543210 14 Ciphertext = 681EDF34D206965E86B3E94F536E4246 15 16 Cipher = SM4-CBC 17 Key = 0123456789ABCDEFFEDCBA9876543210 18 IV = 0123456789ABCDEFFEDCBA9876543210 19 Plaintext = 0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543210 20 Ciphertext = 2677F46B09C122CC975533105BD4A22AF6125F7275CE552C3A2BBCF533DE8A3B 21 22 Cipher = SM4-CBC 23 Key = 0123456789ABCDEFFEDCBA9876543210 24 IV = 0123456789ABCDEFFEDCBA9876543210 25 Plaintext = 0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543210 26 Ciphertext = 2677F46B09C122CC975533105BD4A22AF6125F7275CE552C3A2BBCF533DE8A3BFFF5A4F208092C0901BA02D5772977369915E3FA2356C9F4EB6460ECC457E7f8E3CFA3DEEBFE9883E3A48BCF7C4A11AA3EC9E0D317C5D319BE72A5CDDDEC640C 27 28 Cipher = SM4-CBC 29 Key = 0123456789ABCDEFFEDCBA9876543210 30 IV = 0123456789ABCDEFFEDCBA9876543210 31 Plaintext = 0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543210 32 Ciphertext = 2677f46b09c122cc975533105bd4a22af6125f7275ce552c3a2bbcf533de8a3bfff5a4f208092c0901ba02d5772977369915e3fa2356c9f4eb6460ecc457e7f8e3cfa3deebfe9883e3a48bcf7c4a11aa3ec9e0d317c5d319be72a5cdddec640c6fc70bfa3ddaafffdd7c09b2774dcb2cec29f0c6f0b6773e985b3e395e924238505a8f120d9ca84de5c3cf7e45f097b14b3a46c5b1068669982a5c1f5f61be291b984f331d44ffb2758f771672448fc957fa1416c446427a41e25d5524a2418b9d96b2f17582f0f1aa9c204c6807f54f7b6833c5f00856659ddabc245936868c 33 34 Cipher = SM4-OFB 35 Key = 0123456789ABCDEFFEDCBA9876543210 36 IV = 0123456789ABCDEFFEDCBA9876543210 37 Plaintext = 0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543210 38 Ciphertext = 693D9A535BAD5BB1786F53D7253A7056F2075D28B5235F58D50027E4177D2BCE 39 40 Cipher = SM4-CFB 41 Key = 0123456789ABCDEFFEDCBA9876543210 42 IV = 0123456789ABCDEFFEDCBA9876543210 43 Plaintext = 0123456789ABCDEFFEDCBA98765432100123456789ABCDEFFEDCBA9876543210 44 Ciphertext = 693D9A535BAD5BB1786F53D7253A70569ED258A85A0467CC92AAB393DD978995 45 46 Cipher = SM4-CTR 47 Key = 0123456789ABCDEFFEDCBA9876543210 48 IV = 0123456789ABCDEFFEDCBA9876543210 49 Plaintext = AAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFEEEEEEEEEEEEEEEEAAAAAAAAAAAAAAAA 50 Ciphertext = C2B4759E78AC3CF43D0852F4E8D5F9FD7256E8A5FCB65A350EE00630912E44492A0B17E1B85B060D0FBA612D8A95831638B361FD5FFACD942F081485A83CA35D 51 52 Title = SM4 GCM test vectors from RFC8998 53 54 Cipher = SM4-GCM 55 Key = 0123456789abcdeffedcba9876543210 56 IV = 00001234567800000000abcd 57 AAD = feedfacedeadbeeffeedfacedeadbeefabaddad2 58 Tag = 83de3541e4c2b58177e065a9bf7b62ec 59 Plaintext = aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbccccccccccccccccddddddddddddddddeeeeeeeeeeeeeeeeffffffffffffffffeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaa 60 Ciphertext = 17f399f08c67d5ee19d0dc9969c4bb7d5fd46fd3756489069157b282bb200735d82710ca5c22f0ccfa7cbf93d496ac15a56834cbcf98c397b4024a2691233b8d 61 62 Title = SM4 CCM test vectors from RFC8998 63 64 Cipher = SM4-CCM 65 Key = 0123456789abcdeffedcba9876543210 66 IV = 00001234567800000000abcd 67 AAD = feedfacedeadbeeffeedfacedeadbeefabaddad2 68 Tag = 16842d4fa186f56ab33256971fa110f4 69 Plaintext = aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbccccccccccccccccddddddddddddddddeeeeeeeeeeeeeeeeffffffffffffffffeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaa 70 Ciphertext = 48af93501fa62adbcd414cce6034d895dda1bf8f132f042098661572e7483094fd12e518ce062c98acee28d95df4416bed31a2f04476c18bb40c84a74b97dc5b 71 72 Title = SM4 XTS test vectors from GB/T 17964-2021 73 74 Cipher = SM4-XTS 75 Key = 2B7E151628AED2A6ABF7158809CF4F3C000102030405060708090A0B0C0D0E0F 76 IV = F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF 77 Plaintext = 6BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17 78 Ciphertext = E9538251C71D7B80BBE4483FEF497BD12C5C581BD6242FC51E08964FB4F60FDB0BA42F63499279213D318D2C11F6886E903BE7F93A1B3479 79 80 Cipher = SM4-XTS 81 Key = 2B7E151628AED2A6ABF7158809CF4F3C000102030405060708090A0B0C0D0E0F 82 IV = F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF 83 Plaintext = 6BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17 84 Ciphertext = E9538251C71D7B80BBE4483FEF497BD12C5C581BD6242FC51E08964FB4F60FDB0BA42F63499279213D318D2C11F6886E903BE7F93A1B3479 85 XTSStandard = GB 86 87 Title = SM4 XTS test vectors, while the XTS mode is standardized in IEEE Std 1619-2007 88 89 Cipher = SM4-XTS 90 Key = 2B7E151628AED2A6ABF7158809CF4F3C000102030405060708090A0B0C0D0E0F 91 IV = F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF 92 Plaintext = 6BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17 93 Ciphertext = E9538251C71D7B80BBE4483FEF497BD1B3DB1A3E60408C575D63FF7DB39F83260869F9E2585FEC9F0B863BF8FD784B8627D16C0DB6D2CFC7 94 XTSStandard = IEEE 95 96 Cipher = SM4-XTS 97 Key = FFFEFDFCFBFAF9F8F7F6F5F4F3F2F1F0BFBEBDBCBBBAB9B8B7B6B5B4B3B2B1B0 98 IV = 9A785634120000000000000000000000 99 Plaintext = 000102030405060708090A0B0C0D0E0F10 100 Ciphertext = 9E52443A35410CA0BA5637B94C0766F469 101