Показать сообщение отдельно
  #1  
Старый 30.05.2013, 13:55
JoKeR13 JoKeR13 вне форума
Прохожий
 
Регистрация: 30.05.2013
Сообщения: 3
Версия Delphi: Delphi 7
Репутация: 10
Восклицание Сертификат DER как текстовый файл

Здравсвтвуйте господа, имеется сертификат в 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

Спасибо
Ответить с цитированием