Commit 2c0240e16f837aef6ce94aa48d862cc48e2c0cf0
1 parent
4ad394f7
屏蔽测试代码
Showing
1 changed file
with
54 additions
and
54 deletions
src/main/java/com/genersoft/iot/vmp/gb28181/auth/DigestServerAuthenticationHelper.java
| ... | ... | @@ -239,58 +239,58 @@ public class DigestServerAuthenticationHelper { |
| 239 | 239 | |
| 240 | 240 | } |
| 241 | 241 | |
| 242 | - public static void main(String[] args) throws NoSuchAlgorithmException { | |
| 243 | - String realm = "3402000000"; | |
| 244 | - String username = "44010000001180008012"; | |
| 245 | - | |
| 246 | - | |
| 247 | - String nonce = "07cab60999fbf643264ace27d3b7de8b"; | |
| 248 | - String uri = "sip:34020000002000000001@3402000000"; | |
| 249 | - // qop 保护质量 包含auth(默认的)和auth-int(增加了报文完整性检测)两种策略 | |
| 250 | - String qop = "auth"; | |
| 251 | - | |
| 252 | - // 客户端随机数,这是一个不透明的字符串值,由客户端提供,并且客户端和服务器都会使用,以避免用明文文本。 | |
| 253 | - // 这使得双方都可以查验对方的身份,并对消息的完整性提供一些保护 | |
| 254 | - //String cNonce = authHeader.getCNonce(); | |
| 255 | - | |
| 256 | - // nonce计数器,是一个16进制的数值,表示同一nonce下客户端发送出请求的数量 | |
| 257 | - int nc = 1; | |
| 258 | - String ncStr = new DecimalFormat("00000000").format(nc); | |
| 259 | -// String ncStr = new DecimalFormat("00000000").format(Integer.parseInt(nc + "", 16)); | |
| 260 | - MessageDigest messageDigest = MessageDigest.getInstance(DEFAULT_ALGORITHM); | |
| 261 | - String A1 = username + ":" + realm + ":" + "12345678"; | |
| 262 | - String A2 = "REGISTER" + ":" + uri; | |
| 263 | - byte mdbytes[] = messageDigest.digest(A1.getBytes()); | |
| 264 | - String HA1 = toHexString(mdbytes); | |
| 265 | - System.out.println("A1: " + A1); | |
| 266 | - System.out.println("A2: " + A2); | |
| 267 | - | |
| 268 | - mdbytes = messageDigest.digest(A2.getBytes()); | |
| 269 | - String HA2 = toHexString(mdbytes); | |
| 270 | - System.out.println("HA1: " + HA1); | |
| 271 | - System.out.println("HA2: " + HA2); | |
| 272 | - String cnonce = "0a4f113b"; | |
| 273 | - System.out.println("nonce: " + nonce); | |
| 274 | - System.out.println("nc: " + ncStr); | |
| 275 | - System.out.println("cnonce: " + cnonce); | |
| 276 | - System.out.println("qop: " + qop); | |
| 277 | - String KD = HA1 + ":" + nonce; | |
| 278 | - | |
| 279 | - if (qop != null && qop.equals("auth") ) { | |
| 280 | - if (nc != -1) { | |
| 281 | - KD += ":" + ncStr; | |
| 282 | - } | |
| 283 | - if (cnonce != null) { | |
| 284 | - KD += ":" + cnonce; | |
| 285 | - } | |
| 286 | - KD += ":" + qop; | |
| 287 | - } | |
| 288 | - KD += ":" + HA2; | |
| 289 | - System.out.println("KD: " + KD); | |
| 290 | - mdbytes = messageDigest.digest(KD.getBytes()); | |
| 291 | - String mdString = toHexString(mdbytes); | |
| 292 | - System.out.println("mdString: " + mdString); | |
| 293 | - String response = "4f0507d4b87cdecff04bdaf4c96348f0"; | |
| 294 | - System.out.println("response: " + response); | |
| 295 | - } | |
| 242 | +// public static void main(String[] args) throws NoSuchAlgorithmException { | |
| 243 | +// String realm = "3402000000"; | |
| 244 | +// String username = "44010000001180008012"; | |
| 245 | + | |
| 246 | + | |
| 247 | +// String nonce = "07cab60999fbf643264ace27d3b7de8b"; | |
| 248 | +// String uri = "sip:34020000002000000001@3402000000"; | |
| 249 | +// // qop 保护质量 包含auth(默认的)和auth-int(增加了报文完整性检测)两种策略 | |
| 250 | +// String qop = "auth"; | |
| 251 | + | |
| 252 | +// // 客户端随机数,这是一个不透明的字符串值,由客户端提供,并且客户端和服务器都会使用,以避免用明文文本。 | |
| 253 | +// // 这使得双方都可以查验对方的身份,并对消息的完整性提供一些保护 | |
| 254 | +// //String cNonce = authHeader.getCNonce(); | |
| 255 | + | |
| 256 | +// // nonce计数器,是一个16进制的数值,表示同一nonce下客户端发送出请求的数量 | |
| 257 | +// int nc = 1; | |
| 258 | +// String ncStr = new DecimalFormat("00000000").format(nc); | |
| 259 | +// // String ncStr = new DecimalFormat("00000000").format(Integer.parseInt(nc + "", 16)); | |
| 260 | +// MessageDigest messageDigest = MessageDigest.getInstance(DEFAULT_ALGORITHM); | |
| 261 | +// String A1 = username + ":" + realm + ":" + "12345678"; | |
| 262 | +// String A2 = "REGISTER" + ":" + uri; | |
| 263 | +// byte mdbytes[] = messageDigest.digest(A1.getBytes()); | |
| 264 | +// String HA1 = toHexString(mdbytes); | |
| 265 | +// System.out.println("A1: " + A1); | |
| 266 | +// System.out.println("A2: " + A2); | |
| 267 | + | |
| 268 | +// mdbytes = messageDigest.digest(A2.getBytes()); | |
| 269 | +// String HA2 = toHexString(mdbytes); | |
| 270 | +// System.out.println("HA1: " + HA1); | |
| 271 | +// System.out.println("HA2: " + HA2); | |
| 272 | +// String cnonce = "0a4f113b"; | |
| 273 | +// System.out.println("nonce: " + nonce); | |
| 274 | +// System.out.println("nc: " + ncStr); | |
| 275 | +// System.out.println("cnonce: " + cnonce); | |
| 276 | +// System.out.println("qop: " + qop); | |
| 277 | +// String KD = HA1 + ":" + nonce; | |
| 278 | + | |
| 279 | +// if (qop != null && qop.equals("auth") ) { | |
| 280 | +// if (nc != -1) { | |
| 281 | +// KD += ":" + ncStr; | |
| 282 | +// } | |
| 283 | +// if (cnonce != null) { | |
| 284 | +// KD += ":" + cnonce; | |
| 285 | +// } | |
| 286 | +// KD += ":" + qop; | |
| 287 | +// } | |
| 288 | +// KD += ":" + HA2; | |
| 289 | +// System.out.println("KD: " + KD); | |
| 290 | +// mdbytes = messageDigest.digest(KD.getBytes()); | |
| 291 | +// String mdString = toHexString(mdbytes); | |
| 292 | +// System.out.println("mdString: " + mdString); | |
| 293 | +// String response = "4f0507d4b87cdecff04bdaf4c96348f0"; | |
| 294 | +// System.out.println("response: " + response); | |
| 295 | +// } | |
| 296 | 296 | } | ... | ... |