UNPKG

angular-auth-oidc-client

Version:
25 lines 3.88 kB
import { Injectable, inject } from '@angular/core'; import { CryptoService } from '../utils/crypto/crypto.service'; import * as i0 from "@angular/core"; export class JwkWindowCryptoService { constructor() { this.cryptoService = inject(CryptoService); } importVerificationKey(key, algorithm) { return this.cryptoService .getCrypto() .subtle.importKey('jwk', key, algorithm, false, ['verify']); } verifyKey(verifyAlgorithm, cryptoKey, signature, signingInput) { return this.cryptoService .getCrypto() .subtle.verify(verifyAlgorithm, cryptoKey, signature, new TextEncoder().encode(signingInput)); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: JwkWindowCryptoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: JwkWindowCryptoService, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: JwkWindowCryptoService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiandrLXdpbmRvdy1jcnlwdG8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXV0aC1vaWRjLWNsaWVudC9zcmMvbGliL3ZhbGlkYXRpb24vandrLXdpbmRvdy1jcnlwdG8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBRy9ELE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFFbUIsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7S0FnQ3hEO0lBOUJDLHFCQUFxQixDQUNuQixHQUFlLEVBQ2YsU0FNUTtRQUVSLE9BQU8sSUFBSSxDQUFDLGFBQWE7YUFDdEIsU0FBUyxFQUFFO2FBQ1gsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxTQUFTLENBQ1AsZUFBd0UsRUFDeEUsU0FBb0IsRUFDcEIsU0FBdUIsRUFDdkIsWUFBb0I7UUFFcEIsT0FBTyxJQUFJLENBQUMsYUFBYTthQUN0QixTQUFTLEVBQUU7YUFDWCxNQUFNLENBQUMsTUFBTSxDQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1QsU0FBUyxFQUNULElBQUksV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUN2QyxDQUFDO0lBQ04sQ0FBQzs4R0FoQ1Usc0JBQXNCO2tIQUF0QixzQkFBc0IsY0FEVCxNQUFNOzsyRkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3J5cHRvU2VydmljZSB9IGZyb20gJy4uL3V0aWxzL2NyeXB0by9jcnlwdG8uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgSndrV2luZG93Q3J5cHRvU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3J5cHRvU2VydmljZSA9IGluamVjdChDcnlwdG9TZXJ2aWNlKTtcblxuICBpbXBvcnRWZXJpZmljYXRpb25LZXkoXG4gICAga2V5OiBKc29uV2ViS2V5LFxuICAgIGFsZ29yaXRobTpcbiAgICAgIHwgQWxnb3JpdGhtSWRlbnRpZmllclxuICAgICAgfCBSc2FIYXNoZWRJbXBvcnRQYXJhbXNcbiAgICAgIHwgRWNLZXlJbXBvcnRQYXJhbXNcbiAgICAgIHwgSG1hY0ltcG9ydFBhcmFtc1xuICAgICAgfCBBZXNLZXlBbGdvcml0aG1cbiAgICAgIHwgbnVsbFxuICApOiBQcm9taXNlPENyeXB0b0tleT4ge1xuICAgIHJldHVybiB0aGlzLmNyeXB0b1NlcnZpY2VcbiAgICAgIC5nZXRDcnlwdG8oKVxuICAgICAgLnN1YnRsZS5pbXBvcnRLZXkoJ2p3aycsIGtleSwgYWxnb3JpdGhtLCBmYWxzZSwgWyd2ZXJpZnknXSk7XG4gIH1cblxuICB2ZXJpZnlLZXkoXG4gICAgdmVyaWZ5QWxnb3JpdGhtOiBBbGdvcml0aG1JZGVudGlmaWVyIHwgUnNhUHNzUGFyYW1zIHwgRWNkc2FQYXJhbXMgfCBudWxsLFxuICAgIGNyeXB0b0tleTogQ3J5cHRvS2V5LFxuICAgIHNpZ25hdHVyZTogQnVmZmVyU291cmNlLFxuICAgIHNpZ25pbmdJbnB1dDogc3RyaW5nXG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNyeXB0b1NlcnZpY2VcbiAgICAgIC5nZXRDcnlwdG8oKVxuICAgICAgLnN1YnRsZS52ZXJpZnkoXG4gICAgICAgIHZlcmlmeUFsZ29yaXRobSxcbiAgICAgICAgY3J5cHRvS2V5LFxuICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgIG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShzaWduaW5nSW5wdXQpXG4gICAgICApO1xuICB9XG59XG4iXX0=