Open tarantelot opened 2 years ago
Там з АПІ не дуже зрозуміло шо і як взагалі треба підписувать, тому йой. Можливо треба просто додати tsp та/або ocsp, можливо взагалі не ті дані підписуєте.
На доу пишуть шо треба підписати свій ІПН/ЄДР і включить TSP, але це не точно. Якщо підписуєте файл -- там десь може бути зайвий \n
Подививсь на файл і можу тількі сказати шо починаєтся він з UA1_SIGN, це значить шо параметр --no-tax
або не спрацював або команда не зовсім та шо в написана. Підписано наче те шо треба, але ручки --no-tax
і --tsp
треба посмикать туди-суди
Ок, дякую! Буду пробувати різні варіанти!
Підписав за допомогою ІІТ, з такими параметрами:
Тепер наступна помилка:
{'error': 'Помилка', 'error_description': 'Помилка перевірки підпису: хибний підписант'}
П.С. А який аналог для 'використовувати внутрішній підпис' та 'додавати сертифікат до внутрішнього підпису' у Jkurwa?
@Tarasila розібралися з даною проблемою?
Мені теж цікава ця тема
@sdemonses @nester-sky тоді так нічого і не вдалося. Залишив на потім.
@tarantelot У вас вийшло щось зробити із цим?
tarantelot Скажіте а как Ви полпісалі с помощью IIT Это с помощью EsingJava Можно пример кода ?
Є версія, що проблема проявляється, якщо у сертифікаті немає значення EDRPOU. Ось два ключі, один пропускається податковою і надходить потрібна відповідь, по другому помилка "Помилка перевірки підпису:хибний підпис'" Цей працює 'organizationName': 'ФОП ШЕВЧЕНКО', 'title': 'КЕРІВНИК', 'commonName': 'ШЕВЧЕНКО' ': {'ipn': {'EDRPOU': '3173911188', 'DRFO': '3173911188', '1,2,804,2,1,1,1,11,1,4,7,1': '0'}
А тому помилка {'organizationName': 'ФІЗИЧНА ОСОБА', 'commonName': 'ШЕВЧЕНКО' {'ipn': {'DRFO': '3231901452', '1,2,804,2,1,1,1,11,1,4,7,1': '0'}
@muromec Чи можна додати в підпис вручну EDRPOU=DRFO якщо його немає?
@p2p-sys можна робити отак: agent --sign --edrpou ...
В принципі edrpou це частина трапспортного пакету (того шо формується з --tax
) і не є частиною підпису, то я не дуже розумію що тут коїться взагалі.
Якщо base64 починається з MII, як на скріншоті -- це нормальний CMS без оцих обгорток податкової.
@muromec Ні, це все при відправці на апі кабінету, там немає транспортного пакета
якщо немає транспортного пакету, то куди ви хочете писати ЄДР?
Я не знаю алгоритму на стороні податкової, але дуже схоже, що вони шукають у підписі поле EDRPOU, і якщо його немає воно йде в виняток. Можливо можна якось додати до підписаного документа це поле. Це лише припущення...
Покажіть мені, де в підписі є ЄДРПОУ
Відправив на пошту
@p2p-sys то в чому причина, розібрались?
Привіт, поділюся з вами своїм рішенням, можливо ви підкажете що не так або як це зробити простіше.
Дійсно такі налаштування вірні, але важливо підтягнути сертифікат з властивостями до вашого ключа
Тип: ДСТУ-4145
Призначення: ЕЦП, Неспростовність
тут сертифікат не вказаний з зрозумілих причин
Основна проблема заключається в тому, що підписувати потрібно не стрінгу в ASCII-8BIT, а ІПН перевести в UTF-16LE і отримане значення вже підписати.
І це чомусь працює
Якщо у вас є ідеї, як підписувати ІПН в ASCII-8BIT, велком
Ну то підписуйте в UTF-16, якщо їм треба.
Є версія, що проблема проявляється, якщо у сертифікаті немає значення EDRPOU. Ось два ключі, один пропускається податковою і надходить потрібна відповідь, по другому помилка "Помилка перевірки підпису:хибний підпис'" Цей працює 'organizationName': 'ФОП ШЕВЧЕНКО', 'title': 'КЕРІВНИК', 'commonName': 'ШЕВЧЕНКО' ': {'ipn': {'EDRPOU': '3173911188', 'DRFO': '3173911188', '1,2,804,2,1,1,1,11,1,4,7,1': '0'}
А тому помилка {'organizationName': 'ФІЗИЧНА ОСОБА', 'commonName': 'ШЕВЧЕНКО' {'ipn': {'DRFO': '3231901452', '1,2,804,2,1,1,1,11,1,4,7,1': '0'}
@muromec Чи можна додати в підпис вручну EDRPOU=DRFO якщо його немає?
А в мене чомусь з підписаним ІПН все працює, а з ЄДРПОУ - помилка.
Ось таку помилку отримую від ДПС для приватівської печатки фопа з ЄДРПОУ:
Помилка Помилка перевірки підпису: хибний підписант, не має права підпису
Чи можна додати в підпис вручну EDRPOU=DRFO якщо його немає?
не можна, але можна обрати інший ключ з пакету
В пріватовських контейнерах лежить по чотири, шість, або вісім ключів, тому треба вказувати role
в параметрах щоб воно обрало який надо.
Тут тільки 2:
Digital Signature, Non-Repudiation
Key Agreement
Підписую 1-им, ну і сам ЄДРПОУ з 1-го:
Якщо в сертифікати отакоє потрачено, то з цим зробить нічого не можна.
Добрий день. Хочу дістати облікові дані платника за адресою https://cabinet.tax.gov.ua/ws/public_api/payer_card. Для цього вимагається додати хедер Authorization ЄДРПОУ/РНОКПП підписаний внутрішнім підписом з додаванням сертифікату в BASE64.
Підкажіть, будь ласка, в чому проблема. Можливо, у когось є досвід роботи з приватною частиною ЕК. Дякую.
Прикріплюю підписаний файл: 34554363.txt Опис API доступу до інформації приватної частини ЕК: https://cabinet.tax.gov.ua/help/api-registers-int.html