Web Cryptography API поддерживает использование встроенных криптографических функций браузеров через JavaScript, например, надежный генератор случайных чисел или возможность использовать разные алгоритмы шифрования или подписи.API веб-криптографии: Как найти поддерживаемые алгоритмы?
Спецификация перечисляет overview of algorithms в качестве отправной точки для реализаторов, но имеет следующие редакции добавил:
Примечание: Все алгоритмы, перечисленные следует рассматривать как «особенности группы риска», за исключением реализаторы их принятия. Их включение в проект редактора отражает запросы на их включение членами сообщества и включены в качестве упражнения для обеспечения надежности API, определенного в этой спецификации.
Таким образом, список алгоритмов и рекомендаций может быть значительно изменен в будущих версиях.
Насколько я понял, идея спецификации заключается в предоставлении интерфейса для криптографии, а не записи конкретных алгоритмов (что делает общий смысл!).
Как определить, поддерживает ли клиент определенный алгоритм? Хорошей практикой является скрыть детали реализации, но поскольку алгоритм должен иметь так называемое распознанное имя алгоритма Я не понимаю, почему вы не хотели бы выставлять зарегистрированные алгоритмы. Еще нет интерфейса указано, и объект, где вы зарегистрировать алгоритм описывается следующим образом:
Эта спецификация использует внутренний объект, [[supportedAlgorithms]].
Этот внутренний объект не распространяется на приложения.
Единственная возможность обнаружить доступные алгоритмы в текущем состоянии будет поймать NotSupportedError из тонкого интерфейса.
С моей точки зрения, открытие - это простой поток программ, и ошибки должны обрабатываться как исключение, а не для реализации логики.
Любые советы или предложения? Также приветствуются ссылки на надлежащие обсуждения w3c-mailinglist.