UNPKG

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.

31 lines 3.26 kB
/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 */ /** * @fileoverview A set of helper functions to deal with deltas between the 1P * and 3P proto APIs. * * This is the open source version. */ import { fromBase64 } from '../subtle/bytes'; export function bytesAsU8(b) { if (b == null) { return undefined; } if (typeof b === 'string') { return fromBase64(b, true); } return b; } export function bytesLength(b) { if (b == null) { return undefined; } if (typeof b === 'string') { return fromBase64(b, true).length; } return b.length; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG9fc2hpbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9pbnRlcm5hbC9wcm90b19zaGltcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUg7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFLM0MsTUFBTSxVQUFVLFNBQVMsQ0FBQyxDQUE4QjtJQUV0RCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7UUFDYixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxFQUFFO1FBQ3pCLE9BQU8sVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUM1QjtJQUNELE9BQU8sQ0FBZSxDQUFDO0FBQ3pCLENBQUM7QUFLRCxNQUFNLFVBQVUsV0FBVyxDQUFDLENBQThCO0lBQ3hELElBQUksQ0FBQyxJQUFJLElBQUksRUFBRTtRQUNiLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUU7UUFDekIsT0FBTyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztLQUNuQztJQUNELE9BQVEsQ0FBZ0IsQ0FBQyxNQUFNLENBQUM7QUFDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyIEdvb2dsZSBMTENcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuLyoqXG4gKiBAZmlsZW92ZXJ2aWV3IEEgc2V0IG9mIGhlbHBlciBmdW5jdGlvbnMgdG8gZGVhbCB3aXRoIGRlbHRhcyBiZXR3ZWVuIHRoZSAxUFxuICogYW5kIDNQIHByb3RvIEFQSXMuXG4gKlxuICogVGhpcyBpcyB0aGUgb3BlbiBzb3VyY2UgdmVyc2lvbi5cbiAqL1xuXG5pbXBvcnQge2Zyb21CYXNlNjR9IGZyb20gJy4uL3N1YnRsZS9ieXRlcyc7XG5cbi8qKiBUcmFuc2Zvcm1zIHRoZSBieXRlcyBmaWVsZCB2YWx1ZSB0byBhIFVpbnQ4QXJyYXkuICovXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNBc1U4KGI6IHN0cmluZ3xVaW50OEFycmF5KTogVWludDhBcnJheTtcbmV4cG9ydCBmdW5jdGlvbiBieXRlc0FzVTgoYjogc3RyaW5nfFVpbnQ4QXJyYXl8dW5kZWZpbmVkKTogVWludDhBcnJheXx1bmRlZmluZWQ7XG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNBc1U4KGI6IHN0cmluZ3xVaW50OEFycmF5fHVuZGVmaW5lZCk6IFVpbnQ4QXJyYXl8XG4gICAgdW5kZWZpbmVkIHtcbiAgaWYgKGIgPT0gbnVsbCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgaWYgKHR5cGVvZiBiID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBmcm9tQmFzZTY0KGIsIHRydWUpO1xuICB9XG4gIHJldHVybiBiIGFzIFVpbnQ4QXJyYXk7XG59XG5cbi8qKiBSZXR1cm5zIHRoZSBsZW5ndGggb2YgdGhlIGJ5dGVzIGZpZWxkLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzTGVuZ3RoKGI6IHN0cmluZ3xVaW50OEFycmF5KTogbnVtYmVyO1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzTGVuZ3RoKGI6IHN0cmluZ3xVaW50OEFycmF5fHVuZGVmaW5lZCk6IG51bWJlcnx1bmRlZmluZWQ7XG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNMZW5ndGgoYjogc3RyaW5nfFVpbnQ4QXJyYXl8dW5kZWZpbmVkKTogbnVtYmVyfHVuZGVmaW5lZCB7XG4gIGlmIChiID09IG51bGwpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGlmICh0eXBlb2YgYiA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZnJvbUJhc2U2NChiLCB0cnVlKS5sZW5ndGg7XG4gIH1cbiAgcmV0dXJuIChiIGFzIFVpbnQ4QXJyYXkpLmxlbmd0aDtcbn1cblxuLyoqIEEgdHlwZSB1bmlvbiByZXByZXNlbnRpbmcgYSBzZXJpYWxpemVkIHByb3RvICovXG5leHBvcnQgdHlwZSBQcm90b0J5dGVzID0gc3RyaW5nfFVpbnQ4QXJyYXk7XG4iXX0=