Node.JS Ciphers Info in version 15.x
After the deprecation of methods createCipher(…) and createDecipher(…) due to the introduction of createCipheriv(…) and createDecipheriv(…) a lot of us had issues when specifying the keys and IVs because sometimes the key would be the incorrect size and same for the IVs. I developed a kind of brute force tester to determine the correct values and keep them in a JSON file but honestly it was not ideal.
Today I was having a look at Crypto’s documentation and I saw that for version 15.x of Node.JS there is a method that gives us that information. It’s called getCipherInfo(…) and here’s how to use it:
const crypto = require('crypto');
crypto.getCiphers().forEach((cipher) => {
// console.log(cipher);
console.log(crypto.getCipherInfo(cipher)); // Added in: v15.0.0
});
The console output maybe similar to this:
{
mode: 'cbc',
name: 'aes-128-cbc',
nid: 419,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'aes-128-cbc-hmac-sha1',
nid: 916,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'aes-128-cbc-hmac-sha256',
nid: 948,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'ccm',
name: 'id-aes128-ccm',
nid: 896,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'cfb',
name: 'aes-128-cfb',
nid: 421,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'aes-128-cfb1',
nid: 650,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'aes-128-cfb8',
nid: 653,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ctr',
name: 'aes-128-ctr',
nid: 904,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ecb',
name: 'aes-128-ecb',
nid: 418,
blockSize: 16,
keyLength: 16
}
{
mode: 'gcm',
name: 'id-aes128-gcm',
nid: 895,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'ocb',
name: 'aes-128-ocb',
nid: 958,
blockSize: 16,
ivLength: 12,
keyLength: 16
}
{
mode: 'ofb',
name: 'aes-128-ofb',
nid: 420,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'xts',
name: 'aes-128-xts',
nid: 913,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'aes-192-cbc',
nid: 423,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'ccm',
name: 'id-aes192-ccm',
nid: 899,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'cfb',
name: 'aes-192-cfb',
nid: 425,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'aes-192-cfb1',
nid: 651,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'aes-192-cfb8',
nid: 654,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ctr',
name: 'aes-192-ctr',
nid: 905,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ecb',
name: 'aes-192-ecb',
nid: 422,
blockSize: 16,
keyLength: 24
}
{
mode: 'gcm',
name: 'id-aes192-gcm',
nid: 898,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'ocb',
name: 'aes-192-ocb',
nid: 959,
blockSize: 16,
ivLength: 12,
keyLength: 24
}
{
mode: 'ofb',
name: 'aes-192-ofb',
nid: 424,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cbc',
name: 'aes-256-cbc',
nid: 427,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'aes-256-cbc-hmac-sha1',
nid: 918,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'aes-256-cbc-hmac-sha256',
nid: 950,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'ccm',
name: 'id-aes256-ccm',
nid: 902,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'cfb',
name: 'aes-256-cfb',
nid: 429,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'aes-256-cfb1',
nid: 652,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'aes-256-cfb8',
nid: 655,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ctr',
name: 'aes-256-ctr',
nid: 906,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ecb',
name: 'aes-256-ecb',
nid: 426,
blockSize: 16,
keyLength: 32
}
{
mode: 'gcm',
name: 'id-aes256-gcm',
nid: 901,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'ocb',
name: 'aes-256-ocb',
nid: 960,
blockSize: 16,
ivLength: 12,
keyLength: 32
}
{
mode: 'ofb',
name: 'aes-256-ofb',
nid: 428,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'xts',
name: 'aes-256-xts',
nid: 914,
blockSize: 1,
ivLength: 16,
keyLength: 64
}
{
mode: 'cbc',
name: 'aes-128-cbc',
nid: 419,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'wrap',
name: 'id-aes128-wrap',
nid: 788,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'aes-192-cbc',
nid: 423,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'wrap',
name: 'id-aes192-wrap',
nid: 789,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'cbc',
name: 'aes-256-cbc',
nid: 427,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'wrap',
name: 'id-aes256-wrap',
nid: 790,
blockSize: 8,
ivLength: 8,
keyLength: 32
}
{
mode: 'cbc',
name: 'aria-128-cbc',
nid: 1066,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'ccm',
name: 'aria-128-ccm',
nid: 1120,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'cfb',
name: 'aria-128-cfb',
nid: 1067,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'aria-128-cfb1',
nid: 1080,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'aria-128-cfb8',
nid: 1083,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ctr',
name: 'aria-128-ctr',
nid: 1069,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ecb',
name: 'aria-128-ecb',
nid: 1065,
blockSize: 16,
keyLength: 16
}
{
mode: 'gcm',
name: 'aria-128-gcm',
nid: 1123,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'ofb',
name: 'aria-128-ofb',
nid: 1068,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'aria-192-cbc',
nid: 1071,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'ccm',
name: 'aria-192-ccm',
nid: 1121,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'cfb',
name: 'aria-192-cfb',
nid: 1072,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'aria-192-cfb1',
nid: 1081,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'aria-192-cfb8',
nid: 1084,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ctr',
name: 'aria-192-ctr',
nid: 1074,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ecb',
name: 'aria-192-ecb',
nid: 1070,
blockSize: 16,
keyLength: 24
}
{
mode: 'gcm',
name: 'aria-192-gcm',
nid: 1124,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'ofb',
name: 'aria-192-ofb',
nid: 1073,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cbc',
name: 'aria-256-cbc',
nid: 1076,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'ccm',
name: 'aria-256-ccm',
nid: 1122,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'cfb',
name: 'aria-256-cfb',
nid: 1077,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'aria-256-cfb1',
nid: 1082,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'aria-256-cfb8',
nid: 1085,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ctr',
name: 'aria-256-ctr',
nid: 1079,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ecb',
name: 'aria-256-ecb',
nid: 1075,
blockSize: 16,
keyLength: 32
}
{
mode: 'gcm',
name: 'aria-256-gcm',
nid: 1125,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'ofb',
name: 'aria-256-ofb',
nid: 1078,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'aria-128-cbc',
nid: 1066,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'aria-192-cbc',
nid: 1071,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'cbc',
name: 'aria-256-cbc',
nid: 1076,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'bf-cbc',
nid: 91,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'bf-cbc',
nid: 91,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cfb',
name: 'bf-cfb',
nid: 93,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'bf-ecb',
nid: 92,
blockSize: 8,
keyLength: 16
}
{
mode: 'ofb',
name: 'bf-ofb',
nid: 94,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'bf-cbc',
nid: 91,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'camellia-128-cbc',
nid: 751,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'camellia-128-cfb',
nid: 757,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'camellia-128-cfb1',
nid: 760,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'camellia-128-cfb8',
nid: 763,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ctr',
name: 'camellia-128-ctr',
nid: 963,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ecb',
name: 'camellia-128-ecb',
nid: 754,
blockSize: 16,
keyLength: 16
}
{
mode: 'ofb',
name: 'camellia-128-ofb',
nid: 766,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'camellia-192-cbc',
nid: 752,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'camellia-192-cfb',
nid: 758,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'camellia-192-cfb1',
nid: 761,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cfb',
name: 'camellia-192-cfb8',
nid: 764,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ctr',
name: 'camellia-192-ctr',
nid: 967,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'ecb',
name: 'camellia-192-ecb',
nid: 755,
blockSize: 16,
keyLength: 24
}
{
mode: 'ofb',
name: 'camellia-192-ofb',
nid: 767,
blockSize: 1,
ivLength: 16,
keyLength: 24
}
{
mode: 'cbc',
name: 'camellia-256-cbc',
nid: 753,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'camellia-256-cfb',
nid: 759,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'camellia-256-cfb1',
nid: 762,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cfb',
name: 'camellia-256-cfb8',
nid: 765,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ctr',
name: 'camellia-256-ctr',
nid: 971,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'ecb',
name: 'camellia-256-ecb',
nid: 756,
blockSize: 16,
keyLength: 32
}
{
mode: 'ofb',
name: 'camellia-256-ofb',
nid: 768,
blockSize: 1,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'camellia-128-cbc',
nid: 751,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'camellia-192-cbc',
nid: 752,
blockSize: 16,
ivLength: 16,
keyLength: 24
}
{
mode: 'cbc',
name: 'camellia-256-cbc',
nid: 753,
blockSize: 16,
ivLength: 16,
keyLength: 32
}
{
mode: 'cbc',
name: 'cast5-cbc',
nid: 108,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'cast5-cbc',
nid: 108,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'cast5-cbc',
nid: 108,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cfb',
name: 'cast5-cfb',
nid: 110,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'cast5-ecb',
nid: 109,
blockSize: 8,
keyLength: 16
}
{
mode: 'ofb',
name: 'cast5-ofb',
nid: 111,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'stream',
name: 'chacha20',
nid: 1019,
ivLength: 16,
keyLength: 32
}
{
mode: 'stream',
name: 'chacha20-poly1305',
nid: 1018,
ivLength: 12,
keyLength: 32
}
{
mode: 'cbc',
name: 'des-cbc',
nid: 31,
blockSize: 8,
ivLength: 8,
keyLength: 8
}
{
mode: 'cbc',
name: 'des-cbc',
nid: 31,
blockSize: 8,
ivLength: 8,
keyLength: 8
}
{
mode: 'cfb',
name: 'des-cfb',
nid: 30,
blockSize: 1,
ivLength: 8,
keyLength: 8
}
{
mode: 'cfb',
name: 'des-cfb1',
nid: 656,
blockSize: 1,
ivLength: 8,
keyLength: 8
}
{
mode: 'cfb',
name: 'des-cfb8',
nid: 657,
blockSize: 1,
ivLength: 8,
keyLength: 8
}
{
mode: 'ecb',
name: 'des-ecb',
nid: 29,
blockSize: 8,
keyLength: 8
}
{
mode: 'ecb',
name: 'des-ede',
nid: 32,
blockSize: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'des-ede-cbc',
nid: 43,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cfb',
name: 'des-ede-cfb',
nid: 60,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'des-ede',
nid: 32,
blockSize: 8,
keyLength: 16
}
{
mode: 'ofb',
name: 'des-ede-ofb',
nid: 62,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'des-ede3',
nid: 33,
blockSize: 8,
keyLength: 24
}
{
mode: 'cbc',
name: 'des-ede3-cbc',
nid: 44,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'cfb',
name: 'des-ede3-cfb',
nid: 61,
blockSize: 1,
ivLength: 8,
keyLength: 24
}
{
mode: 'cfb',
name: 'des-ede3-cfb1',
nid: 658,
blockSize: 1,
ivLength: 8,
keyLength: 24
}
{
mode: 'cfb',
name: 'des-ede3-cfb8',
nid: 659,
blockSize: 1,
ivLength: 8,
keyLength: 24
}
{
mode: 'ecb',
name: 'des-ede3',
nid: 33,
blockSize: 8,
keyLength: 24
}
{
mode: 'ofb',
name: 'des-ede3-ofb',
nid: 63,
blockSize: 1,
ivLength: 8,
keyLength: 24
}
{
mode: 'ofb',
name: 'des-ofb',
nid: 45,
blockSize: 1,
ivLength: 8,
keyLength: 8
}
{
mode: 'cbc',
name: 'des-ede3-cbc',
nid: 44,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'wrap',
name: 'id-smime-alg-cms3deswrap',
nid: 246,
blockSize: 8,
keyLength: 24
}
{
mode: 'cbc',
name: 'desx-cbc',
nid: 80,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'cbc',
name: 'desx-cbc',
nid: 80,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'ccm',
name: 'id-aes128-ccm',
nid: 896,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'gcm',
name: 'id-aes128-gcm',
nid: 895,
blockSize: 1,
ivLength: 12,
keyLength: 16
}
{
mode: 'wrap',
name: 'id-aes128-wrap',
nid: 788,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'wrap',
name: 'id-aes128-wrap-pad',
nid: 897,
blockSize: 8,
ivLength: 4,
keyLength: 16
}
{
mode: 'ccm',
name: 'id-aes192-ccm',
nid: 899,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'gcm',
name: 'id-aes192-gcm',
nid: 898,
blockSize: 1,
ivLength: 12,
keyLength: 24
}
{
mode: 'wrap',
name: 'id-aes192-wrap',
nid: 789,
blockSize: 8,
ivLength: 8,
keyLength: 24
}
{
mode: 'wrap',
name: 'id-aes192-wrap-pad',
nid: 900,
blockSize: 8,
ivLength: 4,
keyLength: 24
}
{
mode: 'ccm',
name: 'id-aes256-ccm',
nid: 902,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'gcm',
name: 'id-aes256-gcm',
nid: 901,
blockSize: 1,
ivLength: 12,
keyLength: 32
}
{
mode: 'wrap',
name: 'id-aes256-wrap',
nid: 790,
blockSize: 8,
ivLength: 8,
keyLength: 32
}
{
mode: 'wrap',
name: 'id-aes256-wrap-pad',
nid: 903,
blockSize: 8,
ivLength: 4,
keyLength: 32
}
{
mode: 'wrap',
name: 'id-smime-alg-cms3deswrap',
nid: 246,
blockSize: 8,
keyLength: 24
}
{
mode: 'cbc',
name: 'idea-cbc',
nid: 34,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'idea-cbc',
nid: 34,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cfb',
name: 'idea-cfb',
nid: 35,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'idea-ecb',
nid: 36,
blockSize: 8,
keyLength: 16
}
{
mode: 'ofb',
name: 'idea-ofb',
nid: 46,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'rc2-cbc',
nid: 37,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'rc2-cbc',
nid: 37,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cbc',
name: 'rc2-40-cbc',
nid: 98,
blockSize: 8,
ivLength: 8,
keyLength: 5
}
{
mode: 'cbc',
name: 'rc2-40-cbc',
nid: 98,
blockSize: 8,
ivLength: 8,
keyLength: 5
}
{
mode: 'cbc',
name: 'rc2-64-cbc',
nid: 166,
blockSize: 8,
ivLength: 8,
keyLength: 8
}
{
mode: 'cbc',
name: 'rc2-64-cbc',
nid: 166,
blockSize: 8,
ivLength: 8,
keyLength: 8
}
{
mode: 'cbc',
name: 'rc2-cbc',
nid: 37,
blockSize: 8,
ivLength: 8,
keyLength: 16
}
{
mode: 'cfb',
name: 'rc2-cfb',
nid: 39,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'ecb',
name: 'rc2-ecb',
nid: 38,
blockSize: 8,
keyLength: 16
}
{
mode: 'ofb',
name: 'rc2-ofb',
nid: 40,
blockSize: 1,
ivLength: 8,
keyLength: 16
}
{
mode: 'stream',
name: 'rc4',
nid: 5,
keyLength: 16
}
{
mode: 'stream',
name: 'rc4-40',
nid: 97,
keyLength: 5
}
{
mode: 'stream',
name: 'rc4-hmac-md5',
nid: 915,
keyLength: 16
}
{
mode: 'cbc',
name: 'seed-cbc',
nid: 777,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'seed-cbc',
nid: 777,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'seed-cfb',
nid: 779,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ecb',
name: 'seed-ecb',
nid: 776,
blockSize: 16,
keyLength: 16
}
{
mode: 'ofb',
name: 'seed-ofb',
nid: 778,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'sm4-cbc',
nid: 1134,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cbc',
name: 'sm4-cbc',
nid: 1134,
blockSize: 16,
ivLength: 16,
keyLength: 16
}
{
mode: 'cfb',
name: 'sm4-cfb',
nid: 1137,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ctr',
name: 'sm4-ctr',
nid: 1139,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
{
mode: 'ecb',
name: 'sm4-ecb',
nid: 1133,
blockSize: 16,
keyLength: 16
}
{
mode: 'ofb',
name: 'sm4-ofb',
nid: 1135,
blockSize: 1,
ivLength: 16,
keyLength: 16
}
This is the result for version 15.12.0.