
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
crypto-pro-cadesplugin
Advanced tools
Библиотека предоставляет API для работы c cadesplugin и Крипто Про
Библиотека предоставляет API для работы c cadesplugin и Крипто Про
Обратите внимание! Для пробной работы с Компонентом вам необходимо иметь
- Компьютер под управлением Windows, Linux, MacOS или FreeBSD
- Один из современных браузеров (Internet Explorer, Mozilla Firefox, Opera, Chrome, Яндекс.Браузер, Safari) с поддержкой сценариев JavaScript
- Установленный плагин для браузера «КриптоПро ЭЦП Browser plug-in» (Установить)
- Если планируется создание ЭЦП по ГОСТ Р 34.10-2001/2012, то необходимо установить СКЗИ КриптоПро CSP
- Cертификат ключа подписи, который можно получить на странице тестового центра
- Проверить работу установленного плагина
Выводит информацию о верисии плагина и так далее
Получает массив валидных сертификатов
Получает сертификат по thumbprint значению сертификата
Получает сертификат по thumbprint значению сертификата. С помощью этой функции в сертификате доступны методы для парсинга информации о сертификате
Подписать строку в формате base64
Поддерживаемые КриптоПро ЭЦП Browser plug-in браузеры (IE, Firefox, Opera, Chrome, Safari) не предоставляют простого и надежного способа обработки бинарных данных. Таким образом, невозможно обеспечить корректную передачу бинарных данных из браузера в плагин и обратно. При подписании произвольных данных рекомендуется предварительно закодировать их в Base64 и использовать свойство ContentEncoding.
По этой же причине для возвращаемых из КриптоПро ЭЦП Browser plug-in строк, в которых могут содержаться бинарные данные, не поддерживается кодировка CAPICOM_ENCODING_BINARY.
Подписать строку в формате XML
Возвращает распаршенную информацию о строке subjectInfo
Возвращает распаршенную информацию о строке issuerInfo
Возвращает распаршенную информацию об объекте validPeriod
Функция формирует ключи и значения в зависимости от переданного параметра Доступные параметры 'subjectInfo' и 'issuerInfo'
Формирует дату от переданного параметра
Производит проверку на валидность сертификата
import cadesplugin from 'crypto-pro-cadesplugin';
/**
* @async
* @function doCertsList
* @description формирует массив сертификатов с оригинальными значениями
*/
async function doCertsList() {
const certsApi = await cadesplugin;
const certsList = await certsApi.getCertsList();
return certsList;
}
/**
* @async
* @function doFriendlyCustomCertsList
* @description формирует массив сертификатов с кастомными полями
*/
async function doFriendlyCustomCertsList() {
const certsApi = await cadesplugin;
const certsList = await certsApi.getCertsList();
const friendlyCertsList = certsList.map(cert => {
const friendlySubjectInfo = cert.friendlySubjectInfo();
const friendlyIssuerInfo = cert.friendlyIssuerInfo();
const friendlyValidPeriod = cert.friendlyValidPeriod();
const {
to: { ddmmyy, hhmmss }
} = friendlyValidPeriod;
return {
subjectInfo: friendlySubjectInfo,
issuerInfo: friendlyIssuerInfo,
validPeriod: friendlyValidPeriod,
thumbprint: cert.thumbprint,
title: `${
friendlySubjectInfo.filter(el => el.value === 'Владелец')[0].text
}. Сертификат действителен до: ${ddmmyy} ${hhmmss}`
};
});
}
import {useMemo, useState} from "react";
import ccpa from "crypto-pro-cadesplugin";
const useDoCertsList = () =>
useMemo(async () => {
const certsApi = await ccpa();
const certsList = await certsApi.getCertsList();
const list = certsList.map(({subjectInfo, thumbprint}) => ({
value: thumbprint,
label: subjectInfo
}));
return list;
}, []);
const SelectCert = () => {
const [listSert, setListSert] = useState([{value: "подпись", label: "подпись"}]);
useDoCertsList()
.then(setListSert)
return (
<label>
<select name="thumbprint" >
{
listSert.map(item => (
<option value={item.value} selected>{item.label}</option>
))
}
</select>
Выберите сертификат
</label>
);
};
export default SelectCert;
const sign = await ccpa.signBase64(thumbprint, sBase64Data);
const sign = await ccpa.signXml(thumbprint, Xml);
пример использования можно посмотреть в библиотеке которая использует этот компонент для React.js file-signature-in-react https://github.com/bad4iz/file-signature-in-react
FAQs
Библиотека предоставляет API для работы c cadesplugin и Крипто Про
We found that crypto-pro-cadesplugin demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.