mirror of
https://github.com/hierynomus/sshj.git
synced 2025-12-08 00:00:54 +03:00
Refactored Macs and added hmac-ripemd1600@openssh.com
This commit is contained in:
@@ -129,4 +129,4 @@ Subsystem sftp /usr/lib/ssh/sftp-server
|
|||||||
# ForceCommand cvs server
|
# ForceCommand cvs server
|
||||||
|
|
||||||
|
|
||||||
macs umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com
|
macs umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class MacSpec extends IntegrationBaseSpec {
|
|||||||
client.authenticated
|
client.authenticated
|
||||||
|
|
||||||
where:
|
where:
|
||||||
macFactory << [new HMACSHA2256.Factory(), new HMACRIPEMD160.Factory()]
|
macFactory << [Macs.HMACRIPEMD160(), Macs.HMACRIPEMD160OpenSsh(), Macs.HMACSHA2256(), Macs.HMACSHA2512()]
|
||||||
mac = macFactory.name
|
mac = macFactory.name
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
58
src/main/java/com/hierynomus/sshj/transport/mac/Macs.java
Normal file
58
src/main/java/com/hierynomus/sshj/transport/mac/Macs.java
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
package com.hierynomus.sshj.transport.mac;
|
||||||
|
|
||||||
|
import net.schmizz.sshj.transport.mac.BaseMAC;
|
||||||
|
|
||||||
|
public class Macs {
|
||||||
|
public static Factory HMACMD5() {
|
||||||
|
return new Factory("hmac-md5", "HmacMD5", 16, 16);
|
||||||
|
}
|
||||||
|
public static Factory HMACMD596() {
|
||||||
|
return new Factory("hmac-md5-96", "HmacMD5", 12, 16);
|
||||||
|
}
|
||||||
|
public static Factory HMACRIPEMD160() {
|
||||||
|
return new Factory("hmac-ripemd160", "HMACRIPEMD160", 20, 20);
|
||||||
|
}
|
||||||
|
public static Factory HMACRIPEMD16096() {
|
||||||
|
return new Factory("hmac-ripemd160-96", "HMACRIPEMD160", 12, 20);
|
||||||
|
}
|
||||||
|
public static Factory HMACRIPEMD160OpenSsh() {
|
||||||
|
return new Factory("hmac-ripemd160@openssh.com", "HMACRIPEMD160", 20, 20);
|
||||||
|
}
|
||||||
|
public static Factory HMACSHA1() {
|
||||||
|
return new Factory("hmac-sha1", "HmacSHA1", 20, 20);
|
||||||
|
}
|
||||||
|
public static Factory HMACSHA196() {
|
||||||
|
return new Factory("hmac-sha1-96", "HmacSHA1", 12, 20);
|
||||||
|
}
|
||||||
|
public static Factory HMACSHA2256() {
|
||||||
|
return new Factory("hmac-sha2-256", "HmacSHA256", 32, 32);
|
||||||
|
}
|
||||||
|
public static Factory HMACSHA2512() {
|
||||||
|
return new Factory("hmac-sha2-512", "HmacSHA512", 64, 64);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static class Factory implements net.schmizz.sshj.common.Factory.Named<BaseMAC> {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private String algorithm;
|
||||||
|
private int bSize;
|
||||||
|
private int defBSize;
|
||||||
|
|
||||||
|
public Factory(String name, String algorithm, int bSize, int defBSize) {
|
||||||
|
this.name = name;
|
||||||
|
this.algorithm = algorithm;
|
||||||
|
this.bSize = bSize;
|
||||||
|
this.defBSize = defBSize;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BaseMAC create() {
|
||||||
|
return new BaseMAC(algorithm, bSize, defBSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-MD5 <code>MAC</code>. */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-MD5 <code>MAC</code>.
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACMD5()}
|
||||||
|
*/
|
||||||
public class HMACMD5
|
public class HMACMD5
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-MD5-96 <code>MAC</code> */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-MD5-96 <code>MAC</code>
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACMD596()}
|
||||||
|
*/
|
||||||
public class HMACMD596
|
public class HMACMD596
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
@@ -15,8 +15,13 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Use {@link Macs#HMACRIPEMD160()}
|
||||||
|
*/
|
||||||
public class HMACRIPEMD160 extends BaseMAC {
|
public class HMACRIPEMD160 extends BaseMAC {
|
||||||
/** Named factory for the HMAC-SHA1 <code>MAC</code> */
|
/** Named factory for the HMAC-RIPEMD160 <code>MAC</code> */
|
||||||
public static class Factory
|
public static class Factory
|
||||||
implements net.schmizz.sshj.common.Factory.Named<MAC> {
|
implements net.schmizz.sshj.common.Factory.Named<MAC> {
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-SHA1 <code>MAC</code> */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-SHA1 <code>MAC</code>
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACSHA1()}
|
||||||
|
*/
|
||||||
public class HMACSHA1
|
public class HMACSHA1
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-SHA1-96 <code>MAC</code> */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-SHA1-96 <code>MAC</code>
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACSHA196()}
|
||||||
|
*/
|
||||||
public class HMACSHA196
|
public class HMACSHA196
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-SHA1 <code>MAC</code> */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-SHA1 <code>MAC</code>
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACSHA2256()}
|
||||||
|
*/
|
||||||
public class HMACSHA2256
|
public class HMACSHA2256
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package net.schmizz.sshj.transport.mac;
|
package net.schmizz.sshj.transport.mac;
|
||||||
|
|
||||||
/** HMAC-SHA1 <code>MAC</code> */
|
import com.hierynomus.sshj.transport.mac.Macs;
|
||||||
|
|
||||||
|
/** HMAC-SHA1 <code>MAC</code>
|
||||||
|
*
|
||||||
|
* @deprecated Use {@link Macs#HMACSHA2512()}
|
||||||
|
*/
|
||||||
public class HMACSHA2512
|
public class HMACSHA2512
|
||||||
extends BaseMAC {
|
extends BaseMAC {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user