1b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampackage org.bouncycastle.crypto.params; 2b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 3c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstromimport org.bouncycastle.util.Arrays; 4c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom 5b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallampublic class DSAValidationParameters 6b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam{ 7b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam private byte[] seed; 8b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam private int counter; 9b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 10b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public DSAValidationParameters( 11b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam byte[] seed, 12b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam int counter) 13b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 14b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam this.seed = seed; 15b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam this.counter = counter; 16b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 17b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 18b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public int getCounter() 19b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 20b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return counter; 21b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 22b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 23b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public byte[] getSeed() 24b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 25b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return seed; 26b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 27b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 28c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom public int hashCode() 29c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom { 30c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom return counter ^ Arrays.hashCode(seed); 31c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom } 32c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom 33b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam public boolean equals( 34b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam Object o) 35b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 36b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam if (!(o instanceof DSAValidationParameters)) 37b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 38b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return false; 39b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 40b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 41b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam DSAValidationParameters other = (DSAValidationParameters)o; 42b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 43b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam if (other.counter != this.counter) 44b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam { 45b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam return false; 46b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 47b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam 48c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom return Arrays.areEqual(this.seed, other.seed); 49b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam } 50b61a96e7ef1a78acf013bbf08fe537e5b5f129caPeter Hallam} 51