Commit 2c0240e16f837aef6ce94aa48d862cc48e2c0cf0

Authored by lawrencehj
1 parent 4ad394f7

屏蔽测试代码

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 }
... ...