mirror of
https://github.com/openwrt/luci.git
synced 2025-02-06 22:49:53 +00:00
bec5159369
Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
144 lines
2.9 KiB
JavaScript
144 lines
2.9 KiB
JavaScript
'use strict';
|
|
'require baseclass';
|
|
|
|
return baseclass.extend({
|
|
|
|
_encryptionAlgorithms: new Map([
|
|
['3des', true],
|
|
['cast128', true],
|
|
['blowfish128', true],
|
|
['blowfish192', true],
|
|
['blowfish256', true],
|
|
['null', true],
|
|
['aes128'],
|
|
['aes192'],
|
|
['aes256'],
|
|
['aes128ctr'],
|
|
['aes192ctr'],
|
|
['aes256ctr'],
|
|
['camellia128'],
|
|
['camellia192'],
|
|
['camellia256'],
|
|
['camellia128ctr'],
|
|
['camellia192ctr'],
|
|
['camellia256ctr']
|
|
]),
|
|
|
|
_authenticatedEncryptionAlgorithms: new Map([
|
|
['aes128ccm64'],
|
|
['aes192ccm64'],
|
|
['aes256ccm64'],
|
|
['aes128ccm96'],
|
|
['aes192ccm96'],
|
|
['aes256ccm96'],
|
|
['aes128ccm128'],
|
|
['aes192ccm128'],
|
|
['aes256ccm128'],
|
|
['aes128gcm64'],
|
|
['aes192gcm64'],
|
|
['aes256gcm64'],
|
|
['aes128gcm96'],
|
|
['aes192gcm96'],
|
|
['aes256gcm96'],
|
|
['aes128gcm128'],
|
|
['aes192gcm128'],
|
|
['aes256gcm128'],
|
|
['aes128gmac'],
|
|
['aes192gmac'],
|
|
['aes256gmac'],
|
|
['camellia128ccm64'],
|
|
['camellia192ccm64'],
|
|
['camellia256ccm64'],
|
|
['camellia128ccm96'],
|
|
['camellia192ccm96'],
|
|
['camellia256ccm96'],
|
|
['camellia128ccm128'],
|
|
['camellia192ccm128'],
|
|
['camellia256ccm128'],
|
|
['chacha20poly1305']
|
|
]),
|
|
|
|
_hashAlgorithms: new Map([
|
|
['md5', true],
|
|
['md5_128', true],
|
|
['sha1', true],
|
|
['sha1_160', true],
|
|
['aesxcbc'],
|
|
['aescmac'],
|
|
['aes128gmac'],
|
|
['aes192gmac'],
|
|
['aes256gmac'],
|
|
['sha256'],
|
|
['sha384'],
|
|
['sha512'],
|
|
['sha256_96']
|
|
]),
|
|
|
|
_dhAlgorithms: new Map([
|
|
['modp768', true],
|
|
['modp1024', true],
|
|
['modp1536', true],
|
|
['modp2048'],
|
|
['modp3072'],
|
|
['modp4096'],
|
|
['modp6144'],
|
|
['modp8192'],
|
|
['modp1024s160', true],
|
|
['modp2048s224', true],
|
|
['modp2048s256', true],
|
|
['ecp192', true],
|
|
['ecp224'],
|
|
['ecp256'],
|
|
['ecp384'],
|
|
['ecp521'],
|
|
['ecp224bp'],
|
|
['ecp256bp'],
|
|
['ecp384bp'],
|
|
['ecp512bp'],
|
|
['curve25519'],
|
|
['curve448']
|
|
]),
|
|
|
|
_prfAlgorithms: new Map([
|
|
['prfmd5', true],
|
|
['prfsha1', true],
|
|
['prfaesxcbc'],
|
|
['prfaescmac'],
|
|
['prfsha256'],
|
|
['prfsha384'],
|
|
['prfsha512']
|
|
]),
|
|
|
|
_getAlgorithmNames: function (algorithms) {
|
|
return Array.from(algorithms.keys());
|
|
},
|
|
|
|
isInsecure: function (algorithmName) {
|
|
return this._encryptionAlgorithms.get(algorithmName) == true
|
|
|| this._authenticatedEncryptionAlgorithms.get(algorithmName) == true
|
|
|| this._hashAlgorithms.get(algorithmName) == true
|
|
|| this._dhAlgorithms.get(algorithmName) == true
|
|
|| this._prfAlgorithms.get(algorithmName) == true;
|
|
},
|
|
|
|
getEncryptionAlgorithms: function () {
|
|
return this._getAlgorithmNames(this._encryptionAlgorithms);
|
|
},
|
|
|
|
getAuthenticatedEncryptionAlgorithms: function () {
|
|
return this._getAlgorithmNames(this._authenticatedEncryptionAlgorithms);
|
|
},
|
|
|
|
getHashAlgorithms: function () {
|
|
return this._getAlgorithmNames(this._hashAlgorithms);
|
|
},
|
|
|
|
getDiffieHellmanAlgorithms: function () {
|
|
return this._getAlgorithmNames(this._dhAlgorithms);
|
|
},
|
|
|
|
getPrfAlgorithms: function () {
|
|
return this._getAlgorithmNames(this._prfAlgorithms);
|
|
}
|
|
});
|