![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравсвтвуйте господа, имеется сертификат в DER кодировке, необходимо получить одной из полей, погуглив как это реализовать нашел громоздкий непонятный код и решил что это не мой путь, открыв сертификат notepad++ нашел нужное мне поле, оно всегда имеет следующую форму: RASP##_AAAAAA_AA написал простенький код считывающий сертификат как текстовый файл, и находящий нужный текст:
Код:
while not eof(f) do begin readln(f,s); name:=''; for i:=1 to length(s) do begin if ((s[i]='R') and (s[i+1]='A') and (s[i+2]='S') and (s[i+3]='P')) then begin name:=s[i]+s[i+1]+s[i+2]+s[i+3]; j:=4; while s[i+j] in ['A'..'Z','0'..'9','_',''''] do begin name:=name+s[i+j]; j:=j+1; end; ///// выполняем нужные операции и выходим из цикла end; Проблема следующая, срабатывает не на всех сертификатах, примерно на 1 из 4 упорно не находит нужное поле, помогите разобраться в чем проблема и как решить? Варианты сертификатов с нужными полями ниже, на одном срабатывает на другом нет. http://yadi.sk/d/Gfl_uQ755K5Fu http://yadi.sk/d/xK-302cf5K5Ga Спасибо |