Here you can find the source of xor(byte[] op1, byte[] op2)
Parameter | Description |
---|---|
op1 | byteArray1 |
op2 | byteArray2 |
public static byte[] xor(byte[] op1, byte[] op2)
//package com.java2s; /*/* w w w. ja v a2 s .co m*/ * jPOS Project [http://jpos.org] * Copyright (C) 2000-2019 jPOS Software SRL * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ public class Main { /** * Bitwise XOR between corresponding bytes * @param op1 byteArray1 * @param op2 byteArray2 * @return an array of length = the smallest between op1 and op2 */ public static byte[] xor(byte[] op1, byte[] op2) { byte[] result; // Use the smallest array if (op2.length > op1.length) { result = new byte[op1.length]; } else { result = new byte[op2.length]; } for (int i = 0; i < result.length; i++) { result[i] = (byte) (op1[i] ^ op2[i]); } return result; } }