Статус: Участник
Группы: Участники
Зарегистрирован: 24.02.2021(UTC) Сообщений: 19 Откуда: Сыктывкар Сказал(а) «Спасибо»: 5 раз
|
Здравствуйте! Скомпилировал расширение для Python pycadesНаписал такой пример: Код:import pycades
store = pycades.Store()
store.Open(pycades.CADESCOM_CONTAINER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert(certs.Count != 0), "Certificates with private key not found"
signer = pycades.Signer()
signer.Certificate = certs.Item(1)
signer.CheckCertificate = True
signer.KeyPin = '12345678'
signedData = pycades.SignedData()
signedData.Content = "Test content to be signed"
signature = signedData.SignCades(signer)
print(signature)
При выполнении выше описаного кода получаю ошибку: Цитата:Exception: The private key cannot be accessed because the wrong PIN was presented. (0x8010006B) Судя по всему, указанный мной пин-код не принимается. Подскажите, пожалуйста, как правильно задать пин-код, чтобы можно сформировать подпись?
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 14.02.2024(UTC) Сообщений: 7 Откуда: Пермский край Сказал(а) «Спасибо»: 1 раз
|
Добрый день! А вы уверены, что `certs.Item(1)` вернул нужный вам сертификат да ещё и с приватным ключём? Получаю сертификат так: Код:
def get_cert_by_hash(store: Store, cert_hash, is_valid=True) -> Optional[Certificate]:
"""
Returns the certificate by the SHA-1 hash.
:param store: the Store object
:param cert_hash: the SHA-1 hash of the certificate
:param is_valid: the certificate should be valid
"""
certs = store.Certificates.Find(pycades.CAPICOM_CERTIFICATE_FIND_SHA1_HASH, cert_hash, is_valid)
return certs.Item(1) if certs.Count >= 1 else None
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close