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

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline motogarri  
#1 Оставлено : 14 сентября 2012 г. 13:51:19(UTC)
motogarri

Статус: Участник

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

Доброй пятницы. Помогите плс разобраться.

В контент SignedData или EnvelopedData подается массив байтов файла. Контент преобразовывает массив в строку такого вот вида:
��က䙊䙉Āā搀搀
1. Это что за строка такая? BinaryString?
2. Из нее же потом на выходе после расшифрования нужно снова сделать массив байтов и создать из него файл?
3. Есть ли на CryptoApi или WinApi функции, которые преобразовывают такую строку в байтовый массив?

Код:
Call stream.Open("C:\111.jpg", "Binary")
envelopedData.Content = stream.Read(stream.Bytes)
...
binaryData = envelopedData.Content
Call stream.Write(Тут должен быть array as byte)


Цель: Зашифровать не текстовый файл, передать по почте, расшифровать и получить его в исходном виде.
Offline Андрей Писарев  
#2 Оставлено : 14 сентября 2012 г. 14:18:43(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
motogarri написал:
Доброй пятницы. Помогите плс разобраться.

В контент SignedData или EnvelopedData подается массив байтов файла. Контент преобразовывает массив в строку такого вот вида:
��က䙊䙉Āā搀搀
1. Это что за строка такая? BinaryString?
2. Из нее же потом на выходе после расшифрования нужно снова сделать массив байтов и создать из него файл?
3. Есть ли на CryptoApi или WinApi функции, которые преобразовывают такую строку в байтовый массив?

Код:
Call stream.Open("C:\111.jpg", "Binary")
envelopedData.Content = stream.Read(stream.Bytes)
...
binaryData = envelopedData.Content
Call stream.Write(Тут должен быть array as byte)


Цель: Зашифровать не текстовый файл, передать по почте, расшифровать и получить его в исходном виде.


Реально... пятница...

motogarri, опять? .... Anxious

stream.Read(stream.Bytes) ... а если обратно stream.Write без всяких ЭЦП и шифрования - получается оригинал (jpg)?

motogarri написал:
Контент преобразовывает массив в строку такого вот вида:
��က䙊䙉Āā搀搀

здесь выложи зашифрованный файл...

motogarri написал:

1. Это что за строка такая? BinaryString?

почему сразу "строка" ?зачем смотреть зашифрованные данные в текстовом редакторе?

а как же... msdn хотя бы посмотреть... за месяц можно было... нет? ( http://www.cryptopro.ru/....aspx?g=posts&t=5012 )



motogarri написал:

2. Из нее же потом на выходе после расшифрования нужно снова сделать массив байтов и создать из него файл?

да, но почему такая неуверенность? есть же "цель"..
motogarri написал:

Цель: Зашифровать не текстовый файл, передать по почте, расшифровать и получить его в исходном виде


motogarri написал:

3. Есть ли на CryptoApi или WinApi функции, которые преобразовывают такую строку в байтовый массив?


рассматривай результат шифрования\расшифрования как байтовый массив
просто запиши в файл и сравни с оригиналом...

Отредактировано пользователем 14 сентября 2012 г. 14:22:54(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#3 Оставлено : 14 сентября 2012 г. 14:19:45(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
p.s. язык какой?
на vbs есть в SDK

Техническую поддержку оказываем тут
Наша база знаний
Offline motogarri  
#4 Оставлено : 14 сентября 2012 г. 14:48:07(UTC)
motogarri

Статус: Участник

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

Это LotusScript. В СДК на VBS шифрование текстового файл. Берется строка, шифруется строка. Это просто. Строку контент оставляет в исходном виде.

Call envelopedData.Decrypt(data)
Call stream.Write(envelopedData.Content)

Стрим говорит, что на вход нужен Byte массив а контент дает стоку. Может я изначально в контент неправильный массив даю?
Он так вот выглядит:
arr(0) = 255
arr(1) = 216
arr(2) = 255
arr(3) = 224
arr(4) = 0
arr(5) = 16
...

Отредактировано пользователем 14 сентября 2012 г. 14:48:54(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#5 Оставлено : 14 сентября 2012 г. 14:59:20(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
выложи здесь зашифрованный файл

Техническую поддержку оказываем тут
Наша база знаний
Offline motogarri  
#6 Оставлено : 14 сентября 2012 г. 15:08:36(UTC)
motogarri

Статус: Участник

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

Я пока зашифрованный файл получаю в таком виде:

MIIBjQYJKoZIhvcNAQcDoIIBfjCCAXoCAQAxggFEMIIBQAIBADBzMGUxIDAeBgkq
hkiG9w0BCQEWEWluZm9AY3J5cHRvcHJvLnJ1MQswCQYDVQQGEwJSVTETMBEGA1UE
ChMKQ1JZUFRPLVBSTzEfMB0GA1UEAxMWVGVzdCBDZW50ZXIgQ1JZUFRPLVBSTwIK
Hg4ZIwACAAHvZDAcBgYqhQMCAhMwEgYHKoUDAgIkAAYHKoUDAgIeAQSBpzCBpDAo
BCDSiOD7qweiu5SLYP5bbuRZQePDhwaSSETgXoCug6kXlQQEFAWBhaB4BgcqhQMC
Ah8BoGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQDybaxoT83JU
vH9zZoKi0bx8RX+fmSpC64hGKJzpFKX70c0zHt0HU73pv3tgWkQT/jCVcwvV4fUq
4HBT4uIGSRYECFAmKcfs2jDhMC0GCSqGSIb3DQEHATAdBgYqhQMCAhUwEwQICAkL
g7QbDFcGByqFAwICHwGAAbA=

Это то что получается после data = envelopedData.Encrypt(CAPICOM_ENCODE_BASE64). Шифрую своим же открытым ключем.
Offline Андрей Писарев  
#7 Оставлено : 14 сентября 2012 г. 15:12:52(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
motogarri написал:
Это LotusScript. В СДК на VBS шифрование текстового файл. Берется строка, шифруется строка. Это просто. Строку контент оставляет в исходном виде.
.

в sdk используется чтение файла как текстового... и желающие заменяют чтение файла на
Цитата:
ADODB.Stream
stream.Type = 1 ' adTypeBinary
stream.Open
stream.LoadFromFile filename
///
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#8 Оставлено : 14 сентября 2012 г. 15:14:55(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
motogarri написал:
Я пока зашифрованный файл получаю в таком виде:

MIIBjQYJKoZIhvcNAQcDoIIBfjCCAXoCAQAxggFEMIIBQAIBADBzMGUxIDAeBgkq
hkiG9w0BCQEWEWluZm9AY3J5cHRvcHJvLnJ1MQswCQYDVQQGEwJSVTETMBEGA1UE
ChMKQ1JZUFRPLVBSTzEfMB0GA1UEAxMWVGVzdCBDZW50ZXIgQ1JZUFRPLVBSTwIK
Hg4ZIwACAAHvZDAcBgYqhQMCAhMwEgYHKoUDAgIkAAYHKoUDAgIeAQSBpzCBpDAo
BCDSiOD7qweiu5SLYP5bbuRZQePDhwaSSETgXoCug6kXlQQEFAWBhaB4BgcqhQMC
Ah8BoGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQDybaxoT83JU
vH9zZoKi0bx8RX+fmSpC64hGKJzpFKX70c0zHt0HU73pv3tgWkQT/jCVcwvV4fUq
4HBT4uIGSRYECFAmKcfs2jDhMC0GCSqGSIb3DQEHATAdBgYqhQMCAhUwEwQICAkL
g7QbDFcGByqFAwICHwGAAbA=

Это то что получается после data = envelopedData.Encrypt(CAPICOM_ENCODE_BASE64). Шифрую своим же открытым ключем.


Серийный номер сертификата для расшифровки:
1E0E192300020001EF64
выдан в Test Center CRYPTO-PRO

Можно и так оставить Anxious

Отредактировано пользователем 14 сентября 2012 г. 15:21:23(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#9 Оставлено : 14 сентября 2012 г. 15:20:59(UTC)
Андрей *

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

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

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
p.s. но размер данных - не тот...
какой объем зашифровал?

Отредактировано пользователем 14 сентября 2012 г. 15:21:54(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline motogarri  
#10 Оставлено : 14 сентября 2012 г. 15:22:45(UTC)
motogarri

Статус: Участник

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

Код:
да, но почему такая неуверенность? 

Неуверенность от того, что не получается создать файл на стороне получателя.

EnvelopedData.Content As String
а для создания файла нужен byte массив. Или не обязательно?

ADODB.Stream - попробую


Цитата:
Все отлично!
Серийный номер сертификата для расшифровки:
1E0E192300020001EF64
выдан в Test Center CRYPTO-PRO

Можно и так оставить Anxious

Я из этого должен какой-то вывод сделать или это просто прикол?


файл 41.8 кб

Отредактировано пользователем 14 сентября 2012 г. 15:23:17(UTC)  | Причина: Не указана

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