Объявление

Свернуть
Пока нет объявлений.

Corona QR програмирование сертификата не проходящего проверку

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Delphi_RTTI
    Участник ответил
    К сожалению, как у питона нет. Я смог перевести приблизительно, но увы, не могу правильно получить массив байт.
    Исходящий поток пуст. что-то не правильно...
    Вот часть кода Pascal (Delphi) :
    PHP код:
    unit Base45;

    interface

    uses Classes;

    procedure Base45_Decode(const AInputAOutputTStream);

    implementation

    const
    DecodeTable: array[0..255of byte = (
    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,
    3625525525537382552552552553940255414243,
    012345678944255255255255255,

    25510111213141516171819202122,
    2324, (* UpperCase *)
    252627282930313233343535255255255255,
    25510111213141516171819202122,
    2324, (* LowerCase *)
    252627282930313233343535255255255255,

    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,

    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255,
    255255255255255255255255255255255255255255255255);

    procedure Base45_Decode(const AInputAOutputTStream);
    var
    chabbyte;
    xword;
    begin
    ch
    := 0;
    repeat // Запускаем цикл
    // Чтение входящего потока
    AInput.Read(ch1);
    a:= DecodeTable[ch];
    // Дублируем чтение
    AInput.Read(ch1);
    b:= DecodeTable[ch];
    // Если закончили, выходим из процедуры
    if (255) or (255then exit;
    // Алгоритм кодирования
    x:= 45 b;
    // Если текущая позиция (указатель) не достиг конца
    if AInput.Position AInput.Size then
    begin
    AInput
    .Read(ch1);
    a:= DecodeTable[ch];
    //
    if 255 then exit;
    x:= + (45 45);
    // Сдвиг вправо на 8 байт
    ch:= x shr 8;
    // Записываем в исходящий поток
    AOutput.Write(ch1);
    end;
    ch:= and $FF;
    AOutput.Write(ch1);
    until AInput.Position AInput.Size;
    // Достигли конца - выход из цикла
    end;

    end

    Прокомментировать:


  • Zahlesel
    Участник ответил
    перевести алгоритм бейс45 на делфи с какого языка?
    неужто нет готовой библиотеки как у питона? какой отстой

    Прокомментировать:


  • Delphi_RTTI
    Участник ответил
    Всем привет!
    Пишу программу на Delphi для генерации QR-кода.
    С библиотекой "Base64" проблем нет, строка отлично кодируется и расшифровуется. Сам QR генерируется динамически, по мере ввода в редактор и безупречно считывается любым сканером, прямо с экрана ноута :

    Нажмите на изображение для увеличения. 

Название:	QR.jpg 
Просмотров:	976 
Размер:	386.3 Кб 
ID:	7237
    Но вот с библиотекой "Base45" возникла проблема.
    Я не могу перевести исходник на Delphi, так как не знаю синтаксис языка.
    Кто-нибудь может помочь с переводом?

    Прокомментировать:


  • HelloWorld_x0123
    Участник ответил
    Сообщение от VICTOR Посмотреть сообщение

    а эти приват кии для каждого куара свои? или для региона свои? и куда они вводятся при кодировании, в какое поле?

    { "ver": "1.2.1", "nam": { "fn": "Musterfrau-G\u00f6\u00dfinger", "gn": "Gabriele", "fnt": "MUSTERFRAU<GOESSINGER", "gnt": "GABRIELE" }, "dob": "1998-02-26", "v": [ { "tg": "840539006", "vp": "1119349007", "mp": "EU\/1\/20\/1528", "ma": "ORG-100030215", "dn": 1, "sd": 2, "dt": "2021-02-18", "co": "AT", "is": "Ministry of Health, Austria", "ci": "URN:UVCI:01:AT:10807843F94AEE0EE5093FBC254BD8 13#B " } ] }

    куда его вставлять, например, здесь
    Начни с теории, представь что вместо "Hello" поставлен твой текст { "ver" ..... }

    Нажмите на изображение для увеличения.   Название:	Untitled.png  Просмотров:	0  Размер:	158.7 Кб  ID:	7221

    Нажмите на изображение для увеличения. 

Название:	Untitled.png 
Просмотров:	1075 
Размер:	28.9 Кб 
ID:	7223
    Последний раз редактировалось HelloWorld_x0123; 27-11-2021, 11:48 PM.

    Прокомментировать:


  • Zahlesel
    Участник ответил
    ты очень далек от понимания того, что тебе нужно.
    перечитай тему, ответы есть. если не поймешь то забей. главный ответ я тебе дал:
    нет ключа, не будет валидного куера!


    Trust List / Business Rules Signer
    это и есть ключ

    Прокомментировать:


  • VICTOR
    Участник ответил
    Сообщение от Zahlesel Посмотреть сообщение
    потомучто для декодирования не нужен ключ, а для кодировки нужен оригинальный приват кий, который лежит за семью печатями.
    об этом писалось в данной теме и не раз
    а эти приват кии для каждого куара свои? или для региона свои? и куда они вводятся при кодировании, в какое поле?

    { "ver": "1.2.1", "nam": { "fn": "Musterfrau-G\u00f6\u00dfinger", "gn": "Gabriele", "fnt": "MUSTERFRAU<GOESSINGER", "gnt": "GABRIELE" }, "dob": "1998-02-26", "v": [ { "tg": "840539006", "vp": "1119349007", "mp": "EU\/1\/20\/1528", "ma": "ORG-100030215", "dn": 1, "sd": 2, "dt": "2021-02-18", "co": "AT", "is": "Ministry of Health, Austria", "ci": "URN:UVCI:01:AT:10807843F94AEE0EE5093FBC254BD8 13#B " } ] }

    куда его вставлять, например, здесь
    Последний раз редактировалось VICTOR; 27-11-2021, 07:42 PM.

    Прокомментировать:


  • VICTOR
    Участник ответил
    а почему тогда после кодирования получившийся сертификат проверяется нормально вот здесь: https://www.sslshopper.com/certificate-decoder.html ?

    Прокомментировать:


  • Zahlesel
    Участник ответил
    потомучто для декодирования не нужен ключ, а для кодировки нужен оригинальный приват кий, который лежит за семью печатями.
    об этом писалось в данной теме и не раз

    Прокомментировать:


  • VICTOR
    Участник ответил
    Привет! Насущный вопрос: я декодирую рабочий куар тут: https://ehealth.vyncke.org/, потом кодирую его тут: https://dgc.a-sit.at/ehn/. Он становится нерабочим. Как так?

    Прокомментировать:


  • Zahlesel
    Участник ответил
    верить газетам, каки верить телику.
    ключи есть у админов серверов и так далее. такие вещи не воруют, к ним тупо есть доступ.
    это золотая жила и никто ей не поделится, это опсано, если каждый сможет их делать.
    в таком случае сменять систему и тогда будет ваще жопа и ктото потеряет лишний доход

    Прокомментировать:


  • Chel007
    Участник ответил
    Сообщение от Zahlesel Посмотреть сообщение
    система хитрая в шифровке.
    ключь которым подписывают имеет "отпечаток"(паблик кий). он считывается из любого куера.
    все подписаные одним ключем имеют один и тотже отпечаток и именно он хранится в приложении. их всего сотня
    его и проверяют оффлайн.
    не имея приватный ключ невозможно подписать куер, чтобы при проверке вылазил нужный паблик ключ
    газета куриер пишет что хакеры украли коды, статья вышла в октябре, значит можно его как то взломать.

    Вложения

    Прокомментировать:


  • Zahlesel
    Участник ответил
    система хитрая в шифровке.
    ключь которым подписывают имеет "отпечаток"(паблик кий). он считывается из любого куера.
    все подписаные одним ключем имеют один и тотже отпечаток и именно он хранится в приложении. их всего сотня
    его и проверяют оффлайн.
    не имея приватный ключ невозможно подписать куер, чтобы при проверке вылазил нужный паблик ключ

    Прокомментировать:


  • Zahlesel
    Участник ответил
    этот ключик, доступ к деньгам. никто его не выложит для всех
    рабочие коды гитлера может сделать любой аптекарь приколист
    ну или вакцинист в импфцентре или дом. врач с доступом к базе для получения куера

    Прокомментировать:


  • k76k76
    Участник ответил
    Сообщение от Zahlesel Посмотреть сообщение
    Нажмите на изображение для увеличения. 

Название:	image_2358.jpg 
Просмотров:	2123 
Размер:	44.2 Кб 
ID:	6885

    not valid!!!!
    да, это уже недействительно

    Прокомментировать:


  • k76k76
    Участник прокомментировал ответ
    да, это уже недействительно
Обработка...
X