0

UDP / IPプロトコルを介してデバイスに16進値を送信する必要があります。送信する前に、最初の2バイトと「メッセージシーケンス番号」の2バイトのXORを実行する必要があります。

  1. メッセージシーケンス番号のMSBとLSBはいつどこで見つかりますか
  2. 最初の2バイトに対してXORを実行するにはどうすればよいですか?そうする場合は、元のバイトに追加する方法を教えてください。

これが私の配列ですconstcharconnectByteArray [] = {0x21,0x01,0x01,0x00,0xC0,0x50};

以下の点は、「暗号化ブロックの最初のバイトをメッセージシーケンス番号のMSBとXORし、暗号化ブロックの2番目のバイトをメッセージシーケンス番号のLSBとXORする」と私が思うより良い答えに役立ちます。

4

1 に答える 1

2
//Bitwise XOR operator is ^ .

 byte msb = (byte) (connectByteArray[0])<<8 //LSB
 byte lsb = (byte) (connectByteArray[0]) >> 8 //MSB
于 2012-05-15T13:04:38.463 に答える