это полная функция на Java Код (Text): public static String buildSignatrueValueByCspSignHexadecimal( String cspSignHexadecimal) throws DecoderException { byte[] signBytes = Hex.decodeHex(cspSignHexadecimal.toCharArray()); ArrayUtils.reverse(signBytes); return new Base64().encodeAsString(signBytes); } вот что пока есть PHP: function buildSignatrueValueByCspSignHexadecimal ($str) { //преобразование строки $orawSignature в массив символов $orawSignature_char = str_split($str); //cspSignHexadecimal.toCharArray() //$signBytes = хз что $signBytes_reverse = array_reverse ($signBytes) // перевернет байты или нет - будет видно позже return base64_encode ($signBytes_reverse) } Hex.decodeHex - описание функции https://commons.apache.org/proper/c...mmons/codec/binary/Hex.html#decodeHex(char[]) Converts an array of characters representing hexadecimal values into an array of bytes of those same values. The returned array will be half the length of the passed array, as it takes two characters to represent any given byte. An exception is thrown if the passed char array has an odd number of elements. смотрел в сторону hex2bin - вроде как нето она делает --- Добавлено --- на входе будет примерно вот такая строка 689D82EB139B07E21DCF2084C40564AE5FC2213C786B1D0F42D8B23994459DB1FD0F054C26FA034EC80127C495455F74EA765356DA06F2D3237D05D8EF076C44 --- Добавлено --- сейчас попробую сделать то что должно быть на каждом этапе функции ( если смогу яву запустить)
уфф на выходе из JAVA получилась вот такая строка RGwH79gFfSPT8gbaVlN26nRfRZXEJwHITgP6JkwFD/2xnUWUObLYQg8da3g8IcJfrmQFxIQgzx3iB5sT64KdaA== в пыхе застрял с переворачиванием байт - массива да и не массив это похоже --- Добавлено --- совсем не такая строка вышла ((
Там всего то 3 функции в правильном порядке расставить PHP: return base64_encode(strrev(hex2bin($str)));
начал пилить функцию в яве на выходе Код (Text): byte[] signBytes = Hex.decodeHex(cspSignHexadecimal.toCharArray()); System.out.println (new Base64().encodeAsString(signBytes)); имеем aJ2C6xObB+IdzyCExAVkrl/CITx4ax0PQtiyOZRFnbH9DwVMJvoDTsgBJ8SVRV906nZTVtoG8tMjfQXY7wdsRA== --- Добавлено --- hex2bin уже не подходит ((( не то он выдает
Все собрал ... я идиот - на входе в яву ставил конкретную строку, а в пыхе ставил значение генерируемое .. вы все оказались правы - и это самая минимальная и правильная сборка