This repository has been archived on 2023-04-04. You can view files and clone it, but cannot push or open issues or pull requests.
webcrypto/src/subtle.ts

59 lines
1.5 KiB
TypeScript
Raw Normal View History

2019-01-25 10:43:13 +00:00
import * as core from "webcrypto-core";
import {
2019-03-02 04:40:35 +00:00
AesCbcProvider, AesCtrProvider, AesGcmProvider, AesKwProvider,
2019-01-25 10:43:13 +00:00
DesCbcProvider, DesEde3CbcProvider,
EcdhProvider, EcdsaProvider,
2019-03-02 20:57:59 +00:00
HkdfProvider, HmacProvider,
Pbkdf2Provider,
2019-01-25 10:43:13 +00:00
RsaOaepProvider, RsaPssProvider, RsaSsaProvider,
Sha1Provider, Sha256Provider, Sha384Provider, Sha512Provider,
} from "./mechs";
export class SubtleCrypto extends core.SubtleCrypto {
constructor() {
super();
//#region AES
this.providers.set(new AesCbcProvider());
this.providers.set(new AesCtrProvider());
this.providers.set(new AesGcmProvider());
2019-03-02 04:40:35 +00:00
this.providers.set(new AesKwProvider());
2019-01-25 10:43:13 +00:00
//#endregion
//#region DES
this.providers.set(new DesCbcProvider());
this.providers.set(new DesEde3CbcProvider());
//#endregion
//#region RSA
this.providers.set(new RsaSsaProvider());
this.providers.set(new RsaPssProvider());
2019-05-22 18:26:25 +00:00
this.providers.set(new RsaOaepProvider());
2019-01-25 10:43:13 +00:00
//#endregion
//#region EC
this.providers.set(new EcdsaProvider());
this.providers.set(new EcdhProvider());
//#endregion
//#region SHA
this.providers.set(new Sha1Provider());
this.providers.set(new Sha256Provider());
this.providers.set(new Sha384Provider());
this.providers.set(new Sha512Provider());
//#endregion
//#region PBKDF
this.providers.set(new Pbkdf2Provider());
//#endregion
//#region HMAC
this.providers.set(new HmacProvider());
//#endregion
2019-03-02 20:06:33 +00:00
//#region HKDF
this.providers.set(new HkdfProvider());
//#endregion
2019-01-25 10:43:13 +00:00
}
}