Untitled
unknown
plain_text
9 months ago
1.7 kB
7
Indexable
public String getCheckSum(String nodeId, String processId){
String output;
String sumaCRC8;
Binary Tabela; // tworzymy tabele binarną
String a = nodeId;
Tabela = Binary.fromStringWithCodec(a, "UTF-8") ; // podstawiamy do tabeli ciąg binarnie zapisanych znaków z naszej kopi wyniku w kodowaniu UTF-8
Binary Tabela2; // Tworzymy druga tabele która jest kluczem potrzebnym do szyfrowania i rozszyfrowywania
// Podstawiamy do niej wartości które dostaliśmy od NFK (tego używa contman
Tabela2 = Binary.fromHex("00070E091C1B1215383F363124232A2D70777E796C6B6265484F464154535A5DE0E7EEE9FCFBF2F5D8DFD6D1C4C3CACD90979E998C8B8285A8AFA6A1B4B3BABDC7C0C9CEDBDCD5D2FFF8F1F6E3E4EDEAB7B0B9BEABACA5A28F88818693949D9A2720292E3B3C35321F18111603040D0A5750595E4B4C45426F68616673747D7A898E878095929B9CB1B6BFB8ADAAA3A4F9FEF7F0E5E2EBECC1C6CFC8DDDAD3D4696E676075727B7C51565F584D4A4344191E171005020B0C21262F283D3A33344E49404752555C5B7671787F6A6D64633E39303722252C2B0601080F1A1D1413AEA9A0A7B2B5BCBB9691989F8A8D8483DED9D0D7C2C5CCCBE6E1E8EFFAFDF4F3");
Integer val = 0;
Integer b;
for(int i =0; i < Tabela.Length ; i ++) {
b = Tabela[i];
val.binaryXor(b);
val.binaryAnd(255);
val = Tabela2[val];
if(val>128) {val = val-256;}
}
val.binaryAnd(255);
a += "-"+ val.toString(0,false,16); // do naszego wyniku dodajemy zmienna val którą konwerujemy na hex stringa
sumaCRC8 = val.toString(0,false,16); // podstawiamy do Kodu kreskowego prawidłową OSTATECZNĄ wartość
output = processId+","+sumaCRC8+"-"+nodeId;
return output;
}Editor is loading...
Leave a Comment