Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline Санчир Момолдаев  
#11 Оставлено : 14 декабря 2022 г. 15:14:03(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,223
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 290 раз в 270 постах
не подтверждаю
Код:
import pycades
import base64

print("PyCAdES version: %s" % pycades.ModuleVersion())

store = pycades.Store()
store.Open(pycades.CADESCOM_CURRENT_USER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert (certs.Count != 0), "Certificates with private key not found"
print('Cert count: %d' % certs.Count)
# параметры
certSubject = "test2012"
detached = False
cadesType = pycades.CADESCOM_CADES_BES

certs = certs.Find(pycades.CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certSubject)
signer = pycades.Signer()
signer.Certificate = certs.Item(1)
content = base64.b64encode(bytes("0104612727760417215>9WTu93hBzz", "utf-8")).decode()
#content = "eyJpbm4iOiAiMzcwMjA5MDQyNyIsICJhY3Rpb25fZGF0ZSI6ICIyMDIyLTEyLTE0IiwgImFjdGlvbiI6ICJQQUNLSU5HIiwgInByb2R1Y3RzIjogW3siY2lzIjogIjAxMDQ2MTI3Mjc3NjA0MTcyMTU+OVdUdTkzaEJ6eiIsICJwcm9kdWN0X2Nvc3QiOiAiMTAwMDAifV19"
signedData = pycades.SignedData()
signedData.ContentEncoding = pycades.CADESCOM_BASE64_TO_BINARY
signedData.Content = content
signature = signedData.SignCades(signer, cadesType, detached)

print(signature)

with open('sign.sig', 'w') as binary_sig_file:
    binary_sig_file.write(signature)

_signedData = pycades.SignedData()
_signedData.ContentEncoding = pycades.CADESCOM_BASE64_TO_BINARY
_signedData.Content = content
_signedData.VerifyCades(signature, cadesType, detached)
# print("verify ok")
if not detached:
    content_from_sign = base64.b64decode(_signedData.Content).decode()
    print("\nSigned content:")
    print(content_from_sign)


Цитата:
PyCAdES version: 0.1.30636
Cert count: 13
MIIULgYJKoZIhvcNAQcCoIIUHzCCFBsCAQExDDAKBggqhQMHAQECAjAtBgkqhkiG9w0BBwGgIAQe
MDEwNDYxMjcyNzc2MDQxNzIxNT45V1R1OTNoQnp6oIIPzDCCB4AwggctoAMCAQICEQOeeQsB0K6C
kkfxtYllvGC1MAoGCCqFAwcBAQMCMIIBVjEVMBMGBSqFA2QEEgo3NzE3MTA3OTkxMSAwHgYJKoZI
hvcNAQkBFhFpbmZvQGNyeXB0b3Byby5ydTEYMBYGBSqFA2QBEg0xMDM3NzAwMDg1NDQ0MQswCQYD
VQQGEwJSVTEYMBYGA1UECAwPNzcg0JzQvtGB0LrQstCwMRUwEwYDVQQHDAzQnNC+0YHQutCy0LAx
LzAtBgNVBAkMJtGD0LsuINCh0YPRidGR0LLRgdC60LjQuSDQstCw0Lsg0LQuIDE4MSUwIwYDVQQK
DBzQntCe0J4gItCa0KDQmNCf0KLQni3Qn9Cg0J4iMWswaQYDVQQDDGLQotC10YHRgtC+0LLRi9C5
INC/0L7QtNGH0LjQvdC10L3QvdGL0Lkg0KPQpiDQntCe0J4gItCa0KDQmNCf0KLQni3Qn9Cg0J4i
INCT0J7QodCiIDIwMTIgKNCj0KYgMi4wKTAeFw0yMjA3MTIxNjAzNTFaFw0yMzA3MTIxNjEzNTFa
MBMxETAPBgNVBAMMCHRlc3QyMDEyMGYwHwYIKoUDBwEBAQEwEwYHKoUDAgIkAAYIKoUDBwEBAgID
QwAEQGQLxlYlRdugRwuUmZdWB62kMmMufuWTJ+3dgtZSxZFjosaKskwJkA91LmpJ4pQT1t8LhqQD
HuSHOvMMMjCn2u2jggUOMIIFCjAOBgNVHQ8BAf8EBAMCA/gwHQYDVR0OBBYEFF414JkV9yMs7oAI
WeeJBlqLiv92MDQGCSsGAQQBgjcVBwQnMCUGHSqFAwICMgEJhK/ERI7lQ4Tli2CBj71Ig4FIgsIG
AgEBAgEAMCYGA1UdJQQfMB0GCCsGAQUFBwMCBggrBgEFBQcDBAYHKoUDAgIiBjAyBgkrBgEEAYI3
FQoEJTAjMAoGCCsGAQUFBwMCMAoGCCsGAQUFBwMEMAkGByqFAwICIgYwgagGCCsGAQUFBwEBBIGb
MIGYMDkGCCsGAQUFBzABhi1odHRwOi8vdGVzdGNhMjAxMi5jcnlwdG9wcm8ucnUvb2NzcDIvb2Nz
cC5zcmYwWwYIKwYBBQUHMAKGT2h0dHA6Ly90ZXN0Y2EyMDEyLmNyeXB0b3Byby5ydS9haWEvNzU4
ZDFiZjczMmQyZDBmMjVmMWUwZjllMTM3OWViZmMyMGZlOWUyZi5jcnQwHQYDVR0gBBYwFDAIBgYq
hQNkcQIwCAYGKoUDZHEBMCsGA1UdEAQkMCKADzIwMjIwNzEyMTYwMzUxWoEPMjAyMzA3MTIxNjEz
NTFaMIIBGgYFKoUDZHAEggEPMIIBCww00KHQmtCX0JggItCa0YDQuNC/0YLQvtCf0YDQviBDU1Ai
ICjQstC10YDRgdC40Y8gNC4wKQwx0J/QkNCaICLQmtGA0LjQv9GC0L7Qn9GA0L4g0KPQpiIg0LLQ
tdGA0YHQuNC4IDIuMAxP0KHQtdGA0YLQuNGE0LjQutCw0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQ
uNGPIOKEliDQodCkLzEyNC0zOTcxINC+0YIgMTUuMDEuMjAyMQxP0KHQtdGA0YLQuNGE0LjQutCw
0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNGPIOKEliDQodCkLzEyOC0zODcwINC+0YIgMjMuMDcu
MjAyMDAsBgUqhQNkbwQjDCHQodCa0JfQmCAi0JrRgNC40L/RgtC+0J/RgNC+IENTUCIwYAYDVR0f
BFkwVzBVoFOgUYZPaHR0cDovL3Rlc3RjYTIwMTIuY3J5cHRvcHJvLnJ1L2NkcC83NThkMWJmNzMy
ZDJkMGYyNWYxZTBmOWUxMzc5ZWJmYzIwZmU5ZTJmLmNybDAMBgUqhQNkcgQDAgECMIIBkgYDVR0j
BIIBiTCCAYWAFHWNG/cy0tDyXx4PnhN56/wg/p4voYIBWKSCAVQwggFQMQswCQYDVQQGEwJSVTEV
MBMGBSqFA2QEEgo3NzE3MTA3OTkxMSAwHgYJKoZIhvcNAQkBFhFpbmZvQGNyeXB0b3Byby5ydTEY
MBYGBSqFA2QBEg0xMDM3NzAwMDg1NDQ0MRgwFgYDVQQIDA83NyDQnNC+0YHQutCy0LAxFTATBgNV
BAcMDNCc0L7RgdC60LLQsDEvMC0GA1UECQwm0YPQuy4g0KHRg9GJ0ZHQstGB0LrQuNC5INCy0LDQ
uyDQtC4gMTgxJTAjBgNVBAoMHNCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIxZTBjBgNVBAMM
XNCi0LXRgdGC0L7QstGL0Lkg0LPQvtC70L7QstC90L7QuSDQo9CmINCe0J7QniAi0JrQoNCY0J/Q
otCeLdCf0KDQniIg0JPQntCh0KIgMjAxMiAo0KPQpiAyLjApghED+JiFAHGt4YxNe0tGxX8VQjAK
BggqhQMHAQEDAgNBANz007ObbBjoULI7LoheFy9JoOw6IzJUMSw1XCna2ukl/jq8gJWRi+HK5FHI
FnqAqynLHPpIzyPYazhOZya3YHIwgghEMIIH8aADAgECAhED+JiFAHGt4YxNe0tGxX8VQjAKBggq
hQMHAQEDAjCCAVAxCzAJBgNVBAYTAlJVMRUwEwYFKoUDZAQSCjc3MTcxMDc5OTExIDAeBgkqhkiG
9w0BCQEWEWluZm9AY3J5cHRvcHJvLnJ1MRgwFgYFKoUDZAESDTEwMzc3MDAwODU0NDQxGDAWBgNV
BAgMDzc3INCc0L7RgdC60LLQsDEVMBMGA1UEBwwM0JzQvtGB0LrQstCwMS8wLQYDVQQJDCbRg9C7
LiDQodGD0YnRkdCy0YHQutC40Lkg0LLQsNC7INC0LiAxODElMCMGA1UECgwc0J7QntCeICLQmtCg
0JjQn9Ci0J4t0J/QoNCeIjFlMGMGA1UEAwxc0KLQtdGB0YLQvtCy0YvQuSDQs9C+0LvQvtCy0L3Q
vtC5INCj0KYg0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIiDQk9Ce0KHQoiAyMDEyICjQo9Cm
IDIuMCkwHhcNMjEwNzI2MDc1NjI2WhcNMzEwNzI2MDgwNjI2WjCCAVYxFTATBgUqhQNkBBIKNzcx
NzEwNzk5MTEgMB4GCSqGSIb3DQEJARYRaW5mb0BjcnlwdG9wcm8ucnUxGDAWBgUqhQNkARINMTAz
NzcwMDA4NTQ0NDELMAkGA1UEBhMCUlUxGDAWBgNVBAgMDzc3INCc0L7RgdC60LLQsDEVMBMGA1UE
BwwM0JzQvtGB0LrQstCwMS8wLQYDVQQJDCbRg9C7LiDQodGD0YnRkdCy0YHQutC40Lkg0LLQsNC7
INC0LiAxODElMCMGA1UECgwc0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIjFrMGkGA1UEAwxi
0KLQtdGB0YLQvtCy0YvQuSDQv9C+0LTRh9C40L3QtdC90L3Ri9C5INCj0KYg0J7QntCeICLQmtCg
0JjQn9Ci0J4t0J/QoNCeIiDQk9Ce0KHQoiAyMDEyICjQo9CmIDIuMCkwZjAfBggqhQMHAQEBATAT
BgcqhQMCAiMBBggqhQMHAQECAgNDAARAXw/pc6Kz/ZMKgisoR22JTQ5q9WOWjneZlwBHy5S16nwp
Pxrhq3USTGmZT+y4ddK1YeHJEE5XBYy400H9JjQjHqOCBJMwggSPMF0GBSqFA2RvBFQMUtCh0JrQ
l9CYICLQmtGA0LjQv9GC0L7Qn9GA0L4gQ1NQIiAo0LLQtdGA0YHQuNGPIDQuMCkgKNC40YHQv9C+
0LvQvdC10L3QuNC1IDItQmFzZSkwEgYJKwYBBAGCNxUBBAUCAwMAAzAdBgNVHQ4EFgQUdY0b9zLS
0PJfHg+eE3nr/CD+ni8wDgYDVR0PAQH/BAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwJQYDVR0g
BB4wHDAGBgRVHSAAMAgGBiqFA2RxATAIBgYqhQNkcQIwawYIKwYBBQUHAQEEXzBdMFsGCCsGAQUF
BzAChk9odHRwOi8vdGVzdGNhMjAxMi5jcnlwdG9wcm8ucnUvYWlhLzg2OTY3Zjg1OGMxYjMxYWE5
MmE2OGQxNGYyOGNiYjFmMjEyZjVjM2EuY3J0MB8GCSsGAQQBgjcVBwQSMBAGCCqFAwICLgABAgEB
AgEAMIIBGgYFKoUDZHAEggEPMIIBCww00KHQmtCX0JggItCa0YDQuNC/0YLQvtCf0YDQviBDU1Ai
ICjQstC10YDRgdC40Y8gNC4wKQwx0J/QkNCaICLQmtGA0LjQv9GC0L7Qn9GA0L4g0KPQpiIg0LLQ
tdGA0YHQuNC4IDIuMAxP0KHQtdGA0YLQuNGE0LjQutCw0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQ
uNGPIOKEliDQodCkLzEyNC0zOTcxINC+0YIgMTUuMDEuMjAyMQxP0KHQtdGA0YLQuNGE0LjQutCw
0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNGPIOKEliDQodCkLzEyOC0zODcwINC+0YIgMjMuMDcu
MjAyMDBgBgNVHR8EWTBXMFWgU6BRhk9odHRwOi8vdGVzdGNhMjAxMi5jcnlwdG9wcm8ucnUvY2Rw
Lzg2OTY3Zjg1OGMxYjMxYWE5MmE2OGQxNGYyOGNiYjFmMjEyZjVjM2EuY3JsMAwGBSqFA2RyBAMC
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

Signed content:
0104612727760417215>9WTu93hBzz

Process finished with exit code 0
Техническую поддержку оказываем тут
Наша база знаний
Offline hotsizzle23  
#12 Оставлено : 14 декабря 2022 г. 17:39:02(UTC)
hotsizzle23

Статус: Новичок

Группы: Участники
Зарегистрирован: 14.12.2022(UTC)
Сообщений: 9

Вы используете pycades, который в pip не найден. При попытке сборки этого пакета по инструкции из https://docs.cryptopro.r...es/pycades/pycades-build вылезает несколько ошибок об отсутствии некоторых файлов с расширением ".h". Поэтому её использование не представляется возможным на данный момент или Вы можете дать ссылку на уже собранное расширение?

Так же не понятно, смогу ли я использовать это расширение на Windows, если соберу его на ubuntu.

Отредактировано пользователем 14 декабря 2022 г. 18:46:53(UTC)  | Причина: Не указана

Offline Санчир Момолдаев  
#13 Оставлено : 14 декабря 2022 г. 19:32:19(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,223
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 290 раз в 270 постах
работает только на линуксе. почитайте инструкцию все соберется.
Техническую поддержку оказываем тут
Наша база знаний
Offline Санчир Момолдаев  
#14 Оставлено : 14 декабря 2022 г. 19:36:39(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,223
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 290 раз в 270 постах
на C# interop com также все прекрасно работает.
Техническую поддержку оказываем тут
Наша база знаний
Offline hotsizzle23  
#15 Оставлено : 14 декабря 2022 г. 19:45:36(UTC)
hotsizzle23

Статус: Новичок

Группы: Участники
Зарегистрирован: 14.12.2022(UTC)
Сообщений: 9

Тогда помогите пожалуйста разобраться, почему возникает эта странная ошибка при моей реализации на win32com.client. Не linux не C# не подходят, как варианты.
Offline hotsizzle23  
#16 Оставлено : 14 декабря 2022 г. 20:27:34(UTC)
hotsizzle23

Статус: Новичок

Группы: Участники
Зарегистрирован: 14.12.2022(UTC)
Сообщений: 9

С ошибкой разобрался, проблемы была совершенно не в криптографии и Ваших программных продуктах. Большое спасибо за быструю реакцию!
Offline Андрей *  
#17 Оставлено : 14 декабря 2022 г. 20:39:04(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,672
Мужчина
Российская Федерация

Сказал «Спасибо»: 572 раз
Поблагодарили: 2301 раз в 1802 постах
Автор: hotsizzle23 Перейти к цитате
С ошибкой разобрался, проблемы была совершенно не в криптографии и Ваших программных продуктах. Большое спасибо за быструю реакцию!


если возможно - опишите в чём была проблема, вдруг будет аналогичный случай у форумчан.
Техническую поддержку оказываем тут
Наша база знаний
Offline hotsizzle23  
#18 Оставлено : 14 декабря 2022 г. 21:09:08(UTC)
hotsizzle23

Статус: Новичок

Группы: Участники
Зарегистрирован: 14.12.2022(UTC)
Сообщений: 9

Да, без проблем.
Подписание у меня реализовано, как REST API сервис. Изначально я кодировал в base64 до отправки запроса в этот API. После того, как я отправил строку в явном виде и закодировал в base64 на стороне API, проблема ушла. Возможно тут еще играет роль тот факт, что запросы отправляются из Linux, а API работает на Windows. Но, повторюсь, ошибка возникала только при наличии в исходной строке символа ">". С чем это конкретно связано, точно сказать не могу.

Еще раз большое спасибо!
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.