tink-crypto
Version:
A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.
29 lines • 4.45 kB
JavaScript
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
import * as Registry from '../internal/registry';
import { EcdsaPrivateKeyManager } from './ecdsa_private_key_manager';
import { EcdsaPublicKeyManager } from './ecdsa_public_key_manager';
import { PublicKeySignWrapper } from './public_key_sign_wrapper';
import { PublicKeyVerifyWrapper } from './public_key_verify_wrapper';
// Static methods and constants for registering with the Registry all instances
// of key types for digital signature supported in a particular release of Tink.
// To register all key types from the current Tink release one can do:
// SignatureConfig.register();
/**
* Registers key managers for all PublicKeyVerify and PublicKeySign key types
* from the current Tink release.
*/
export function register() {
Registry.registerKeyManager(new EcdsaPrivateKeyManager());
Registry.registerKeyManager(new EcdsaPublicKeyManager());
Registry.registerPrimitiveWrapper(new PublicKeySignWrapper());
Registry.registerPrimitiveWrapper(new PublicKeyVerifyWrapper());
}
export const VERIFY_PRIMITIVE_NAME = 'PublicKeyVerify';
export const ECDSA_PUBLIC_KEY_TYPE = EcdsaPublicKeyManager.KEY_TYPE;
export const SIGN_PRIMITIVE_NAME = 'PublicKeySign';
export const ECDSA_PRIVATE_KEY_TYPE = EcdsaPrivateKeyManager.KEY_TYPE;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlX2NvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NpZ25hdHVyZS9zaWduYXR1cmVfY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBRWpELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRW5FLCtFQUErRTtBQUMvRSxnRkFBZ0Y7QUFDaEYsc0VBQXNFO0FBQ3RFLDhCQUE4QjtBQUU5Qjs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsUUFBUTtJQUN0QixRQUFRLENBQUMsa0JBQWtCLENBQUMsSUFBSSxzQkFBc0IsRUFBRSxDQUFDLENBQUM7SUFDMUQsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUkscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUM5RCxRQUFRLENBQUMsd0JBQXdCLENBQUMsSUFBSSxzQkFBc0IsRUFBRSxDQUFDLENBQUM7QUFDbEUsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFXLGlCQUFpQixDQUFDO0FBRS9ELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFXLHFCQUFxQixDQUFDLFFBQVEsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBVyxlQUFlLENBQUM7QUFFM0QsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQVcsc0JBQXNCLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjAgR29vZ2xlIExMQ1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgKiBhcyBSZWdpc3RyeSBmcm9tICcuLi9pbnRlcm5hbC9yZWdpc3RyeSc7XG5cbmltcG9ydCB7RWNkc2FQcml2YXRlS2V5TWFuYWdlcn0gZnJvbSAnLi9lY2RzYV9wcml2YXRlX2tleV9tYW5hZ2VyJztcbmltcG9ydCB7RWNkc2FQdWJsaWNLZXlNYW5hZ2VyfSBmcm9tICcuL2VjZHNhX3B1YmxpY19rZXlfbWFuYWdlcic7XG5pbXBvcnQge1B1YmxpY0tleVNpZ25XcmFwcGVyfSBmcm9tICcuL3B1YmxpY19rZXlfc2lnbl93cmFwcGVyJztcbmltcG9ydCB7UHVibGljS2V5VmVyaWZ5V3JhcHBlcn0gZnJvbSAnLi9wdWJsaWNfa2V5X3ZlcmlmeV93cmFwcGVyJztcblxuLy8gU3RhdGljIG1ldGhvZHMgYW5kIGNvbnN0YW50cyBmb3IgcmVnaXN0ZXJpbmcgd2l0aCB0aGUgUmVnaXN0cnkgYWxsIGluc3RhbmNlc1xuLy8gb2Yga2V5IHR5cGVzIGZvciBkaWdpdGFsIHNpZ25hdHVyZSBzdXBwb3J0ZWQgaW4gYSBwYXJ0aWN1bGFyIHJlbGVhc2Ugb2YgVGluay5cbi8vIFRvIHJlZ2lzdGVyIGFsbCBrZXkgdHlwZXMgZnJvbSB0aGUgY3VycmVudCBUaW5rIHJlbGVhc2Ugb25lIGNhbiBkbzpcbi8vIFNpZ25hdHVyZUNvbmZpZy5yZWdpc3RlcigpO1xuXG4vKipcbiAqIFJlZ2lzdGVycyBrZXkgbWFuYWdlcnMgZm9yIGFsbCBQdWJsaWNLZXlWZXJpZnkgYW5kIFB1YmxpY0tleVNpZ24ga2V5IHR5cGVzXG4gKiBmcm9tIHRoZSBjdXJyZW50IFRpbmsgcmVsZWFzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyKCkge1xuICBSZWdpc3RyeS5yZWdpc3RlcktleU1hbmFnZXIobmV3IEVjZHNhUHJpdmF0ZUtleU1hbmFnZXIoKSk7XG4gIFJlZ2lzdHJ5LnJlZ2lzdGVyS2V5TWFuYWdlcihuZXcgRWNkc2FQdWJsaWNLZXlNYW5hZ2VyKCkpO1xuICBSZWdpc3RyeS5yZWdpc3RlclByaW1pdGl2ZVdyYXBwZXIobmV3IFB1YmxpY0tleVNpZ25XcmFwcGVyKCkpO1xuICBSZWdpc3RyeS5yZWdpc3RlclByaW1pdGl2ZVdyYXBwZXIobmV3IFB1YmxpY0tleVZlcmlmeVdyYXBwZXIoKSk7XG59XG5cbmV4cG9ydCBjb25zdCBWRVJJRllfUFJJTUlUSVZFX05BTUU6IHN0cmluZyA9ICdQdWJsaWNLZXlWZXJpZnknO1xuXG5leHBvcnQgY29uc3QgRUNEU0FfUFVCTElDX0tFWV9UWVBFOiBzdHJpbmcgPSBFY2RzYVB1YmxpY0tleU1hbmFnZXIuS0VZX1RZUEU7XG5cbmV4cG9ydCBjb25zdCBTSUdOX1BSSU1JVElWRV9OQU1FOiBzdHJpbmcgPSAnUHVibGljS2V5U2lnbic7XG5cbmV4cG9ydCBjb25zdCBFQ0RTQV9QUklWQVRFX0tFWV9UWVBFOiBzdHJpbmcgPSBFY2RzYVByaXZhdGVLZXlNYW5hZ2VyLktFWV9UWVBFO1xuIl19