1b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampackage org.bouncycastle.crypto.params; 2b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 3b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallamimport java.math.BigInteger; 4b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 5b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampublic class DHPublicKeyParameters 6b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam extends DHKeyParameters 7b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam{ 8b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam private BigInteger y; 9b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 10b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public DHPublicKeyParameters( 11b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam BigInteger y, 12b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam DHParameters params) 13b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 14b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam super(false, params); 15b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 16b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam this.y = y; 17b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 18b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 19b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public BigInteger getY() 20b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 21b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return y; 22b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 23b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 24c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom public int hashCode() 25c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom { 26c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom return y.hashCode() ^ super.hashCode(); 27c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom } 28c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom 29b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public boolean equals( 30b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam Object obj) 31b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 32b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam if (!(obj instanceof DHPublicKeyParameters)) 33b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 34b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return false; 35b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 36b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 37c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom DHPublicKeyParameters other = (DHPublicKeyParameters)obj; 38b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 39c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom return other.getY().equals(y) && super.equals(obj); 40b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 41b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam} 42