Błąd "Nieczytelna treść" podczas wysyłki FV

0

Walczę aby wysłać FV na demo.
Mój json wygląda tak:

{
  "InvoiceHash": {
    "HashSHA": {
      "Algorithm": "SHA-256",
      "Encoding": "Base64",
      "Value": "QohnFbnJGdX4pyHgfAL4j6/ipwrm8iAeySAh48yPo+Y="
    },
    "FileSize": 3342
  },
  "InvoicePayload": {
    "Type": "plain",
    "InvoiceBody": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxGYWt0dXJhIHhtbG5zOmV0ZD0iaHR0cDovL2NyZC5nb3YucGwveG1sL3NjaGVtYXR5L2R6aWVkemlub3dlL21mLzIwMjIvMDEvMDUvZUQvRGVmaW5pY2plVHlweS8iIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiDQp4bWxucz0iaHR0cDovL2NyZC5nb3YucGwvd3pvci8yMDIzLzA2LzI5LzEyNjQ4LyI+DQoJPE5hZ2xvd2VrPg0KCQk8S29kRm9ybXVsYXJ6YSBrb2RTeXN0ZW1vd3k9IkZBICgyKSIgd2Vyc2phU2NoZW15PSIxLTBFIj5GQTwvS29kRm9ybXVsYXJ6YT4NCgkJPFdhcmlhbnRGb3JtdWxhcnphPjI8L1dhcmlhbnRGb3JtdWxhcnphPg0KCQk8RGF0YVd5dHdvcnplbmlhRmE+MjAyMi0wMS0wMVQwMDowMDowMFo8L0RhdGFXeXR3b3J6ZW5pYUZhPg0KCQk8U3lzdGVtSW5mbz5TYW1wbG9GYWt0dXI8L1N5c3RlbUluZm8+DQoJPC9OYWdsb3dlaz4NCgk8UG9kbWlvdDE+DQoJCTxEYW5lSWRlbnR5ZmlrYWN5am5lPg0KCQkJPE5JUD42NzUxMzM4ODcyPC9OSVA+DQoJCQk8TmF6d2E+UmFmYcWCIEt1Ym93aWN6PC9OYXp3YT4NCgkJPC9EYW5lSWRlbnR5ZmlrYWN5am5lPg0KCQk8QWRyZXM+DQoJCQk8S29kS3JhanU+UEw8L0tvZEtyYWp1Pg0KCQkJPEFkcmVzTDE+dWwuIEt3aWF0b3dhIDEgbS4gMjwvQWRyZXNMMT4NCgkJCTxBZHJlc0wyPjAwLTAwMSBXYXJzemF3YTwvQWRyZXNMMj4NCgkJPC9BZHJlcz4NCgkJPERhbmVLb250YWt0b3dlPg0KCQkJPEVtYWlsPmFiY0BhYmMucGw8L0VtYWlsPg0KCQkJPFRlbGVmb24+NjY3NDQ0NTU1PC9UZWxlZm9uPg0KCQk8L0RhbmVLb250YWt0b3dlPg0KCTwvUG9kbWlvdDE+DQoJPFBvZG1pb3QyPg0KCQk8RGFuZUlkZW50eWZpa2FjeWpuZT4NCgkJCTxOSVA+NjU5MTUxMTk0MTwvTklQPg0KCQkJPE5hendhPlNlcGllbGFrPC9OYXp3YT4NCgkJPC9EYW5lSWRlbnR5ZmlrYWN5am5lPg0KCQk8QWRyZXM+DQoJCQk8S29kS3JhanU+UEw8L0tvZEtyYWp1Pg0KCQkJPEFkcmVzTDE+dWwuIFBvbG5hIDE8L0FkcmVzTDE+DQoJCQk8QWRyZXNMMj4wMC0wMDEgV2Fyc3phd2E8L0FkcmVzTDI+DQoJCTwvQWRyZXM+DQoJCTxEYW5lS29udGFrdG93ZT4NCgkJCTxFbWFpbD5qYW5Aa293YWxza2kucGw8L0VtYWlsPg0KCQkJPFRlbGVmb24+NTU1Nzc3OTk5PC9UZWxlZm9uPg0KCQk8L0RhbmVLb250YWt0b3dlPg0KCQk8TnJLbGllbnRhPmZkZmQ3NzgzNDM8L05yS2xpZW50YT4NCgk8L1BvZG1pb3QyPg0KCTxGYT4NCgkJPEtvZFdhbHV0eT5QTE48L0tvZFdhbHV0eT4NCgkJPFBfMT4yMDIyLTAyLTE1PC9QXzE+DQoJCTxQXzFNPldhcnN6YXdhPC9QXzFNPg0KCQk8UF8yPkZWMjAyMi8wMi8xNTA8L1BfMj4NCgkJPFBfNj4yMDIyLTAxLTI3PC9QXzY+DQoJCTxQXzEzXzE+MTY2Ni42NjwvUF8xM18xPg0KCQk8UF8xNF8xPjM4My4zMzwvUF8xNF8xPg0KCQk8UF8xM18zPjAuOTU8L1BfMTNfMz4NCgkJPFBfMTRfMz4wLjA1PC9QXzE0XzM+DQoJCTxQXzE1PjIwNTE8L1BfMTU+DQoJCTxBZG5vdGFjamU+DQoJCQk8UF8xNj4yPC9QXzE2Pg0KCQkJPFBfMTc+MjwvUF8xNz4NCgkJCTxQXzE4PjI8L1BfMTg+DQoJCQk8UF8xOEE+MjwvUF8xOEE+DQoJCQk8WndvbG5pZW5pZT4NCgkJCQk8UF8xOU4+MTwvUF8xOU4+DQoJCQk8L1p3b2xuaWVuaWU+DQoJCQk8Tm93ZVNyb2RraVRyYW5zcG9ydHU+DQoJCQkJPFBfMjJOPjE8L1BfMjJOPg0KCQkJPC9Ob3dlU3JvZGtpVHJhbnNwb3J0dT4NCgkJCTxQXzIzPjI8L1BfMjM+DQoJCQk8UE1hcnp5Pg0KCQkJCTxQX1BNYXJ6eU4+MTwvUF9QTWFyenlOPg0KCQkJPC9QTWFyenk+DQoJCTwvQWRub3RhY2plPg0KCQk8Um9kemFqRmFrdHVyeT5WQVQ8L1JvZHphakZha3R1cnk+DQoJCTxGUD4xPC9GUD4NCgkJPERvZGF0a293eU9waXM+DQoJCQk8S2x1Y3o+cHJlZmVyb3dhbmUgZ29kemlueSBkb3dvenU8L0tsdWN6Pg0KCQkJPFdhcnRvc2M+ZG5pIHJvYm9jemUgMTc6MDAgLSAyMDowMDwvV2FydG9zYz4NCgkJPC9Eb2RhdGtvd3lPcGlzPg0KCQk8RmFXaWVyc3o+DQoJCQk8TnJXaWVyc3phRmE+MTwvTnJXaWVyc3phRmE+DQoJCQk8VVVfSUQ+YWFhYTExMTEzMzMzOTk5MDwvVVVfSUQ+DQoJCQk8UF83PmxvZMOzd2thIFppbW5vdGVjaCBtazE8L1BfNz4NCgkJCTxQXzhBPnN6dC48L1BfOEE+DQoJCQk8UF84Qj4xPC9QXzhCPg0KCQkJPFBfOUE+MTYyNi4wMTwvUF85QT4NCgkJCTxQXzExPjE2MjYuMDE8L1BfMTE+DQoJCQk8UF8xMj4yMzwvUF8xMj4NCgkJPC9GYVdpZXJzej4NCgkJPEZhV2llcnN6Pg0KCQkJPE5yV2llcnN6YUZhPjI8L05yV2llcnN6YUZhPg0KCQkJPFVVX0lEPmFhYWExMTExMzMzMzk5OTE8L1VVX0lEPg0KCQkJPFBfNz53bmllc2llbmllIHNwcnrEmXR1PC9QXzc+DQoJCQk8UF84QT5zenQuPC9QXzhBPg0KCQkJPFBfOEI+MTwvUF84Qj4NCgkJCTxQXzlBPjQwLjY1PC9QXzlBPg0KCQkJPFBfMTE+NDAuNjU8L1BfMTE+DQoJCQk8UF8xMj4yMzwvUF8xMj4NCgkJPC9GYVdpZXJzej4NCgkJPEZhV2llcnN6Pg0KCQkJPE5yV2llcnN6YUZhPjM8L05yV2llcnN6YUZhPg0KCQkJPFVVX0lEPmFhYWExMTExMzMzMzk5OTI8L1VVX0lEPg0KCQkJPFBfNz5wcm9tb2NqYSBsb2TDs3drYSBwZcWCbmEgbWxla2E8L1BfNz4NCgkJCTxQXzhBPnN6dC48L1BfOEE+DQoJCQk8UF84Qj4xPC9QXzhCPg0KCQkJPFBfOUE+MC45NTwvUF85QT4NCgkJCTxQXzExPjAuOTU8L1BfMTE+DQoJCQk8UF8xMj41PC9QXzEyPg0KCQk8L0ZhV2llcnN6Pg0KCQk8UGxhdG5vc2M+DQoJCQk8WmFwbGFjb25vPjE8L1phcGxhY29ubz4NCgkJCTxEYXRhWmFwbGF0eT4yMDIyLTAxLTI3PC9EYXRhWmFwbGF0eT4NCgkJCTxGb3JtYVBsYXRub3NjaT42PC9Gb3JtYVBsYXRub3NjaT4NCgkJPC9QbGF0bm9zYz4NCgkJPFdhcnVua2lUcmFuc2FrY2ppPg0KCQkJPFphbW93aWVuaWE+DQoJCQkJPERhdGFaYW1vd2llbmlhPjIwMjItMDEtMjY8L0RhdGFaYW1vd2llbmlhPg0KCQkJCTxOclphbW93aWVuaWE+NDM1NDM0MzwvTnJaYW1vd2llbmlhPg0KCQkJPC9aYW1vd2llbmlhPg0KCQk8L1dhcnVua2lUcmFuc2FrY2ppPg0KCTwvRmE+DQoJPFN0b3BrYT4NCgkJPEluZm9ybWFjamU+DQoJCQk8U3RvcGthRmFrdHVyeT5LYXBpYcWCIHpha8WCYWRvd3kgNSAwMDAgMDAwPC9TdG9wa2FGYWt0dXJ5Pg0KCQk8L0luZm9ybWFjamU+DQoJCTxSZWplc3RyeT4NCgkJCTxLUlM+MDAwMDA5OTk5OTwvS1JTPg0KCQkJPFJFR09OPjk5OTk5OTk5OTwvUkVHT04+DQoJCQk8QkRPPjAwMDA5OTk5OTwvQkRPPg0KCQk8L1JlamVzdHJ5Pg0KCTwvU3RvcGthPg0KPC9GYWt0dXJhPg0K"
  }
}

Oczywiście mam podpięty token sesji pod to wywołanie "PUT"

XML opisujący FV jest OK. Przechodzi przez inną aplikację.
Porównywałem invoice body z widocznym w innej aplikacji i jest takie samo.
To samo z Hashem - też powinien być OK.

natomiast cały czas dostaję zwrotkę z KSEF błędem:

"exceptionDetailList": [
    {
        "exceptionCode": 21001,
        "exceptionDescription": "Nieczytelna treść."
    }
]

Niestety nie mogę tu załączyć xml-a FV.
Można go pobrać tu jak by ktoś miał czas sprawdzić czy na pewno mam dobrze hash wyliczony i body.
https://devdt.pl/prv/fv.txt
Może ktoś ma pomysł co jeszcze mogę sprawdzić bo utknąłęm.
Z góry dzięki.

0

Rozkodowałem twoja fakturę i jak policzyłem z niej SHA-256, a potem potraktowałem go Base64 to mi inna wartość wyszła:

MTcwZjAwNGViNzI0MTkyM2FmNTRhNzE2NjI0ODgwODc2NDBkZTEzNGZkOTIxZGRiNTA3YWZjYmE4N2VkYWVhMA==
0

Na moje oko błąd jest w użyciu wielkich liter na początku nazw w JSONie. Zamiast InvoiceHash spróbuj invoiceHash.
Niestety taka zamiana prowadzi u mnie do błędu niezgodności ze schemą (json). Aktualnie ksef-test nie działa, więc nie jestem w stanie kombinować dalej z wysyłaniem (to mi się jeszcze nie udało).

0

Tak dzięki --- chodziło o wielkość znaków w początku nazw - z małymi literkami działa aż miło ... Pozdrawiam

0

Czy udało się ten temat rozwiązać ?, jeżeli tak proszę o opis rozwiązania tematu

0

Tak - w moim przypadku chodziło o to że w Josn opisującym FV nazwy parametrów były z dużej litery a mają być z małej np. InvoiceBody a ma Być invoiceBody

0

Mógłbyś zerknąć ja mam tak js, wydaj się ok,

js = { invoiceHash: {
            hashSHA: {
                algorithm: "SHA-256",
                encoding: "Base64",
                value: fv.fakturaHashBase64
            },
            filesize: fv.fakturaDlugosc,
        },
        invoicePayload: {
            type: "plain",
            invoiceBody: fv.fakturaBase64
        },
    }
0

Wklej cały Json jaki chcesz przesłać z podstawionymi parametrami. Zerknę czy u mnie przejdzie.
Tu masz przykład prawidłowego JSONA - U ciebie nie ma Cudzysłowów w nazwach paramsów.

{
  "invoiceHash": {
    "hashSHA": {
      "algorithm": "SHA-256",
      "encoding": "Base64",
      "value": "QohnFbnJGdX4pyHgfAL4j6/ipwrm8iAeySAh48yPo+Y="
    },
    "fileSize": 3342
  },
  "invoicePayload": {
    "type": "plain",
    "invoiceBody": "TU BODY"
  }
}

Np na pierwszy rzut oka widać ze u ciebie jest filesize a powinno być fileSize (wielkość znaków tu ma znacznie).
Możesz tez wkleić całeko XMLa FV to odeslę Ci gotowego JS z niego żebyś miał dla porównania.

0

W tej chwili zaczęło się coś dziać, poszło dalej serdeczne dzięki, zmienił się komunika "Nieprawidłowy rozmiar pliku.
Nie wiem czy w tym zakresie możesz coś pomóc.

{"invoiceHash":{"hashSHA":{"algorithm":"SHA-256","encoding":"Base64","value":"g7ClnwoktCTWoUV9maih0aaM2Mm6a2GU6I9AI0wWQsQ="},"filSize":2916},"invoicePayload":{"type":"pl
ain","invoiceBody":"PEZha3R1cmEgeG1sbnM6ZXRkPSJodHRwOi8vY3JkLmdvdi5wbC94bWwvc2NoZW1hdHkvZHppZWR6aW5vd2UvbWYvMjAyMi8wMS8wNS9lRC9EZWZpbmljamVUeXB5LyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM9Imh0dHA6Ly9jcmQuZ292LnBsL3d6b3IvMjAyMy8wNi8yOS8xMjY0OC8iPg0KPE5hZ2xvd2VrPg0KPEtvZEZvcm11bGFyemEga29kU3lzdGVtb3d5PSJGQSAoMikiIHdlcnNqYVNjaGVt
eT0iMS0wRSI+RkE8L0tvZEZvcm11bGFyemE+DQo8V2FyaWFudEZvcm11bGFyemE+MjwvV2FyaWFudEZvcm11bGFyemE+DQo8RGF0YVd5dHdvcnplbmlhRmE+MjAyNC0wMS0xMVQ4OjI6MDBaPC9EYXRhV3l0d29yemVuaWFGYT4NCjxTeXN0ZW1J
bmZvPlRFU1RTQzwvU3lzdGVtSW5mbz4NCjwvTmFnbG93ZWs+DQo8UG9kbWlvdDE+DQo8RGFuZUlkZW50eWZpa2FjeWpuZT4NCjxOSVA+NzEyMTAyMzk2NjwvTklQPg0KPE5hendhPkZpcm1hIGFsYSBtYSBrb3RhPC9OYXp3YT4NCjwvRGFuZUlk
ZW50eWZpa2FjeWpuZT4NCjxBZHJlcz4NCjxLb2RLcmFqdT5QTDwvS29kS3JhanU+DQo8QWRyZXNMMT5LYXJlbGlhIDQ4IDwvQWRyZXNMMT4NCjxBZHJlc0wyPjI4LTMwNSBTb2Jrw7N3PC9BZHJlc0wyPg0KPC9BZHJlcz4NCjxEYW5lS29udGFr
dG93ZT4NCjxFbWFpbD5iaXVyb0BhbGEuY29tLnBsPC9FbWFpbD4NCjxUZWxlZm9uPjY2NDkyMjAzMzM8L1RlbGVmb24+DQo8L0RhbmVLb250YWt0b3dlPg0KPC9Qb2RtaW90MT4NCjxQb2RtaW90Mj4NCjxEYW5lSWRlbnR5ZmlrYWN5am5lPg0K
PE5JUD43MTIxMDIzOTY2PC9OSVA+DQo8TmF6d2E+QUxLQU5UQVJBPC9OYXp3YT4NCjwvRGFuZUlkZW50eWZpa2FjeWpuZT4NCjxBZHJlcz4NCjxLb2RLcmFqdT5QTDwvS29kS3JhanU+DQo8QWRyZXNMMT4gNDg8L0FkcmVzTDE+DQo8QWRyZXNM
Mj4yOC0zMDUgS09OL0FkcmVzTDI+DQo8L0FkcmVzPg0KPERhbmVLb250YWt0b3dlPg0KPEVtYWlsPmJpdXJvQHNlci5jb20ucGw8L0VtYWlsPg0KPFRlbGVmb24+NjA0MTczODIwPC9UZWxlZm9uPg0KPC9EYW5lS29udGFrdG93ZT4NCjwvUG9k
bWlvdDI+DQo8RmE+DQo8S29kV2FsdXR5PlBMTjwvS29kV2FsdXR5Pg0KPFBfMT4yMDI0LTAxLTExPC9QXzE+DQo8UF8xTT5Tb2Jrw7N3PC9QXzFNPg0KPFBfMj4xLzIwMjQ8L1BfMj4NCjxQXzY+MjAyNC0wMS0xMTwvUF82Pg0KPFBfMTNfMT4w
LjAwPC9QXzEzXzE+DQo8UF8xNF8xPjAuMDA8L1BfMTRfMT4NCjxQXzEzXzI+MC4wMDwvUF8xM18yPg0KPFBfMTRfMj4wLjAwPC9QXzE0XzI+DQo8UF8xM18zPjAuMDA8L1BfMTNfMz4NCjxQXzE0XzM+MC4wMDwvUF8xNF8zPg0KPFBfMTNfNl8x
PjAuMDA8L1BfMTNfNl8xPg0KPFBfMTNfNz4xMDAuMDA8L1BfMTNfNz4NCjxQXzE1PjEwMC4wMDwvUF8xNT4NCjxBZG5vdGFjamU+DQo8UF8xNj4yPC9QXzE2Pg0KPFBfMTc+MjwvUF8xNz4NCjxQXzE4PjI8L1BfMTg+DQo8UF8xOEE+MjwvUF8x
OEE+DQo8WndvbG5pZW5pZT4NCjxQXzE5Tj4xPC9QXzE5Tj4NCjwvWndvbG5pZW5pZT4NCjxOb3dlU3JvZGtpVHJhbnNwb3J0dT4NCjxQXzIyTj4xPC9QXzIyTj4NCjwvTm93ZVNyb2RraVRyYW5zcG9ydHU+DQo8UF8yMz4yPC9QXzIzPg0KPFBN
YXJ6eT4NCjxQX1BNYXJ6eU4+MTwvUF9QTWFyenlOPg0KPC9QTWFyenk+DQo8L0Fkbm90YWNqZT4NCjxSb2R6YWpGYWt0dXJ5PlZBVDwvUm9kemFqRmFrdHVyeT4NCjxGYVdpZXJzej4NCjxOcldpZXJzemFGYT4xPC9OcldpZXJzemFGYT4NCjxV
VV9JRD4xMjgyOTwvVVVfSUQ+DQo8UF83PkFMQSBtYSBrb3RhPC9QXzc+DQo8UF84QT5zenQuPC9QXzhBPg0KPFBfOEI+MTAuMDA8L1BfOEI+DQo8UF85QT4xMC4wMDwvUF85QT4NCjxQXzExPjEwMC4wMDwvUF8xMT4NCjxQXzEyPnp3PC9QXzEy
Pg0KPC9GYVdpZXJzej4NCjxQbGF0bm9zYz4NCjxUZXJtaW5QbGF0bm9zY2k+DQo8VGVybWluPjIwMjQtMDEtMjU8L1Rlcm1pbj4NCjwvVGVybWluUGxhdG5vc2NpPg0KPEZvcm1hUGxhdG5vc2NpPjY8L0Zvcm1hUGxhdG5vc2NpPg0KPC9QbGF0bm9zYz4NCjwvRmE+DQo8U3RvcGthPg0KPEluZm9ybWFjamU+DQo8U3RvcGthRmFrdHVyeT5LYXBpYcWCIHpha8WCYWRvd3kgMC4wMDwvU3RvcGthRmFrdHVyeT4NCjwvSW5mb3JtYWNqZT4NCjwvU3RvcGthPg0KPC9GYWt0dXJhPg=="}}
0

Faktura, wysłana !, zakręciłem się z danymi
Dziękuje za podpowiedź

0
konradS napisał(a):

Faktura, wysłana !, zakręciłem się z danymi
Dziękuje za podpowiedź

Czesc, mam podobny problem z koledzy wcześniej. Sprawdziłem wielkości liter i wygląda na to że mam prawidłowo, a i tak mi nie przechodzi.
Możecie zerknąć proszę?

{
"invoiceHash": {
"hashSHA": {
"algorithm": "SHA-256",
"encoding": "Base64",
"value": "jWXIf/s2HO5Bv5uS/L198hxax171xSXUSqwkKbMLm+8="
},
"fileSize": "3208"
},
"invoicePayload": {
"type": "plain",
"invoiceBody": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/Pg0KPEZha3R1cmEgeG1sbnM9Imh0dHA6Ly9jcmQuZ292LnBsL3d6b3IvMjAyMy8wNi8yOS8xMjY0OC8iPg0KCTxOYWdsb3dlaz4NCgkJPEtvZEZvcm11bGFyemEga29kU3lzdGVtb3d5PSJGQSAoMikiIHdlcnNqYVNjaGVteT0iMS0wRSI+RkE8L0tvZEZvcm11bGFyemE+DQoJCTxXYXJpYW50Rm9ybXVsYXJ6YT4yPC9XYXJpYW50Rm9ybXVsYXJ6YT4NCgkJPERhdGFXeXR3b3J6ZW5pYUZhPjIwMjItMDEtMDE8L0RhdGFXeXR3b3J6ZW5pYUZhPg0KCQk8U3lzdGVtSW5mbz5TYW1wbG9GYWt0dXI8L1N5c3RlbUluZm8+DQoJPC9OYWdsb3dlaz4NCgk8UG9kbWlvdDE+DQoJCTxEYW5lSWRlbnR5ZmlrYWN5am5lPg0KCQkJPE5JUD4xMDcwMDM4Mzg1PC9OSVA+DQoJCQk8TmF6d2E+QUJDIEFHRCBzcC4geiBvLiBvLjwvTmF6d2E+DQoJCTwvRGFuZUlkZW50eWZpa2FjeWpuZT4NCgkJPEFkcmVzPg0KCQkJPEtvZEtyYWp1PlBMPC9Lb2RLcmFqdT4NCgkJCTxBZHJlc0wxPnVsLiBLd2lhdG93YSAxIG0uIDI8L0FkcmVzTDE+DQoJCQk8QWRyZXNMMj4wMC0wMDEgV2Fyc3phd2E8L0FkcmVzTDI+DQoJCTwvQWRyZXM+DQoJCTxEYW5lS29udGFrdG93ZT4NCgkJCTxFbWFpbD5hYmNAYWJjLnBsPC9FbWFpbD4NCgkJCTxUZWxlZm9uPjY2NzQ0NDU1NTwvVGVsZWZvbj4NCgkJPC9EYW5lS29udGFrdG93ZT4NCgk8L1BvZG1pb3QxPg0KCTxQb2RtaW90Mj4NCgkJPERhbmVJZGVudHlmaWthY3lqbmU+DQoJCQk8TklQPjExMTExMTExMTE8L05JUD4NCgkJCTxOYXp3YT5GLkguVS4gSmFuIEtvd2Fsc2tpPC9OYXp3YT4NCgkJPC9EYW5lSWRlbnR5ZmlrYWN5am5lPg0KCQk8QWRyZXM+DQoJCQk8S29kS3JhanU+UEw8L0tvZEtyYWp1Pg0KCQkJPEFkcmVzTDE+dWwuIFBvbG5hIDE8L0FkcmVzTDE+DQoJCQk8QWRyZXNMMj4wMC0wMDEgV2Fyc3phd2E8L0FkcmVzTDI+DQoJCTwvQWRyZXM+DQoJCTxEYW5lS29udGFrdG93ZT4NCgkJCTxFbWFpbD5qYW5Aa293YWxza2kucGw8L0VtYWlsPg0KCQkJPFRlbGVmb24+NTU1Nzc3OTk5PC9UZWxlZm9uPg0KCQk8L0RhbmVLb250YWt0b3dlPg0KCQk8TnJLbGllbnRhPmZkZmQ3NzgzNDM8L05yS2xpZW50YT4NCgk8L1BvZG1pb3QyPg0KCTxGYT4NCgkJPEtvZFdhbHV0eT5QTE48L0tvZFdhbHV0eT4NCgkJPFBfMT4yMDIyLTAyLTE1PC9QXzE+DQoJCTxQXzFNPldhcnN6YXdhPC9QXzFNPg0KCQk8UF8yPkZWMjAyMi8wMi8yNTA8L1BfMj4NCgkJPFBfNj4yMDIyLTAxLTI3PC9QXzY+DQoJCTxQXzEzXzE+MTY2Ni42NjwvUF8xM18xPg0KCQk8UF8xNF8xPjM4My4zMzwvUF8xNF8xPg0KCQk8UF8xM18zPjAuOTU8L1BfMTNfMz4NCgkJPFBfMTRfMz4wLjA1PC9QXzE0XzM+DQoJCTxQXzE1PjIwNTE8L1BfMTU+DQoJCTxBZG5vdGFjamU+DQoJCQk8UF8xNj4yPC9QXzE2Pg0KCQkJPFBfMTc+MjwvUF8xNz4NCgkJCTxQXzE4PjI8L1BfMTg+DQoJCQk8UF8xOEE+MjwvUF8xOEE+DQoJCQk8WndvbG5pZW5pZT4NCgkJCQk8UF8xOU4+MTwvUF8xOU4+DQoJCQk8L1p3b2xuaWVuaWU+DQoJCQk8Tm93ZVNyb2RraVRyYW5zcG9ydHU+DQoJCQkJPFBfMjJOPjE8L1BfMjJOPg0KCQkJPC9Ob3dlU3JvZGtpVHJhbnNwb3J0dT4NCgkJCTxQXzIzPjI8L1BfMjM+DQoJCQk8UE1hcnp5Pg0KCQkJCTxQX1BNYXJ6eU4+MTwvUF9QTWFyenlOPg0KCQkJPC9QTWFyenk+DQoJCTwvQWRub3RhY2plPg0KCQk8Um9kemFqRmFrdHVyeT5WQVQ8L1JvZHphakZha3R1cnk+DQoJCTxGUD4xPC9GUD4NCgkJPERvZGF0a293eU9waXM+DQoJCQk8S2x1Y3o+cHJlZmVyb3dhbmUgZ29kemlueSBkb3dvenU8L0tsdWN6Pg0KCQkJPFdhcnRvc2M+ZG5pIHJvYm9jemUgMTc6MDAgLSAyMDowMDwvV2FydG9zYz4NCgkJPC9Eb2RhdGtvd3lPcGlzPg0KCQk8RmFXaWVyc3o+DQoJCQk8TnJXaWVyc3phRmE+MTwvTnJXaWVyc3phRmE+DQoJCQk8VVVfSUQ+YWFhYTExMTEzMzMzOTk5MDwvVVVfSUQ+DQoJCQk8UF83PmxvZHdrYSBaaW1ub3RlY2ggbWsxPC9QXzc+DQoJCQk8UF84QT5zenQuPC9QXzhBPg0KCQkJPFBfOEI+MTwvUF84Qj4NCgkJCTxQXzlBPjE2MjYuMDE8L1BfOUE+DQoJCQk8UF8xMT4xNjI2LjAxPC9QXzExPg0KCQkJPFBfMTI+MjM8L1BfMTI+DQoJCTwvRmFXaWVyc3o+DQoJCTxGYVdpZXJzej4NCgkJCTxOcldpZXJzemFGYT4yPC9OcldpZXJzemFGYT4NCgkJCTxVVV9JRD5hYWFhMTExMTMzMzM5OTkxPC9VVV9JRD4NCgkJCTxQXzc+d25pZXNpZW5pZSBzcHJ6dHU8L1BfNz4NCgkJCTxQXzhBPnN6dC48L1BfOEE+DQoJCQk8UF84Qj4xPC9QXzhCPg0KCQkJPFBfOUE+NDAuNjU8L1BfOUE+DQoJCQk8UF8xMT40MC42NTwvUF8xMT4NCgkJCTxQXzEyPjIzPC9QXzEyPg0KCQk8L0ZhV2llcnN6Pg0KCQk8RmFXaWVyc3o+DQoJCQk8TnJXaWVyc3phRmE+MzwvTnJXaWVyc3phRmE+DQoJCQk8VVVfSUQ+YWFhYTExMTEzMzMzOTk5MjwvVVVfSUQ+DQoJCQk8UF83PnByb21vY2phIGxvZHdrYSBwZW5hIG1sZWthPC9QXzc+DQoJCQk8UF84QT5zenQuPC9QXzhBPg0KCQkJPFBfOEI+MTwvUF84Qj4NCgkJCTxQXzlBPjAuOTU8L1BfOUE+DQoJCQk8UF8xMT4wLjk1PC9QXzExPg0KCQkJPFBfMTI+NTwvUF8xMj4NCgkJPC9GYVdpZXJzej4NCgkJPFBsYXRub3NjPg0KCQkJPFphcGxhY29ubz4xPC9aYXBsYWNvbm8+DQoJCQk8RGF0YVphcGxhdHk+MjAyMi0wMS0yNzwvRGF0YVphcGxhdHk+DQoJCQk8Rm9ybWFQbGF0bm9zY2k+NjwvRm9ybWFQbGF0bm9zY2k+DQoJCTwvUGxhdG5vc2M+DQoJCTxXYXJ1bmtpVHJhbnNha2NqaT4NCgkJCTxaYW1vd2llbmlhPg0KCQkJCTxEYXRhWmFtb3dpZW5pYT4yMDIyLTAxLTI2PC9EYXRhWmFtb3dpZW5pYT4NCgkJCQk8TnJaYW1vd2llbmlhPjQzNTQzNDM8L05yWmFtb3dpZW5pYT4NCgkJCTwvWmFtb3dpZW5pYT4NCgkJPC9XYXJ1bmtpVHJhbnNha2NqaT4NCgk8L0ZhPg0KCTxTdG9wa2E+DQoJCTxJbmZvcm1hY2plPg0KCQkJPFN0b3BrYUZha3R1cnk+S2FwaWEgemFrYWRvd3kgNSAwMDAgMDAwPC9TdG9wa2FGYWt0dXJ5Pg0KCQk8L0luZm9ybWFjamU+DQoJCTxSZWplc3RyeT4NCgkJCTxLUlM+MDAwMDA5OTk5OTwvS1JTPg0KCQkJPFJFR09OPjk5OTk5OTk5OTwvUkVHT04+DQoJCQk8QkRPPjAwMDA5OTk5OTwvQkRPPg0KCQk8L1JlamVzdHJ5Pg0KCTwvU3RvcGthPg0KPC9GYWt0dXJhPg=="

}
}

Code:

public static String fileSha256ToBase64() throws NoSuchAlgorithmException, IOException {
//Path filepath = Path.of("C:/Users/shaviha/eclipse-workspace/FA_2_P.xml");
//String content= Files.readString(filepath);
// byte[] fb = content.getBytes(StandardCharsets.UTF_8);

FileInputStream fin = new FileInputStream("C:/Users/shaviha/eclipse-workspace/FA_2_P.xml");
byte[]fb=fin.readAllBytes();
MessageDigest digester = MessageDigest.getInstance("SHA-256");
byte[] digestsha=digester.digest(fb);
String body = Base64.getEncoder().encodeToString(fb);
System.out.println("Encrypted bodysha: " + body);
System.out.println("Encrypted length: " + fb.length);
return Base64.getEncoder().encodeToString(digestsha);
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1