📄 sslsignature_log.java
字号:
/****************************************************************
* 软件:Java签名协议扩展 (Java Signature Protocol Extension, JSPE)
* 版本:V1.0
* 软件功能:实现SSL签名协议
* 模块:公共类SSLSignature_Log
*-----------------------------------------------------------------
* 版权所有:中山大学软件研究所 2002
* Programmed by 佛山张峰岭 fszfl@21cn.com
* 2002.4 - 2002.5
*****************************************************************/
package com.zsusoft.zfl;
import java.io.*;
import java.util.*;
/***
* SSLSignature_Log
* 这个类的对象用于记录日志文件
* 这些日志文件可以用来分析和调试。
***/
public class SSLSignature_Log{
/**
* 保存对方签名请求到签名记录,由于签名请求中
* 有对方的签名,可以防止对方否认,也便于与对方核对
**/
private String SignLogFileName="SSL_signature.log";//签名记录名
/**
* 构造函数指定用于保存日志的文件名
**/
public SSLSignature_Log(String FileName)
{
SignLogFileName=FileName;
}
public SSLSignature_Log()
{
}
/**
* 保存签名信息到日志文件
**/
public void SaveSignToLog(String Desc,Signature_request S_request,Signature_reply S_reply)
{
String Message = "----------------------------------";
Message += "\n" + "时间:"+(new Date()).toString();
Message += "\n" + Desc;
Message += "\n" + "签名请求的信息:";
Message += "\n" + S_request.toString();
Message += "\n" + "签名返回的信息:";
Message += S_reply.toString();
Save_Message_Log(Message);
return ;
}
/**
* 保存调试信息到日志文件(静态方法)
**/
public static void Save_Message_Log(String Filename,String Message)
{
try{
PrintWriter out = new PrintWriter(
new BufferedWriter(
new OutputStreamWriter(
new FileOutputStream(Filename,true)))); //true表示按照Append方式打开文件
out.println(Message);
out.flush();
out.close();
return ;
} catch (IOException e)
{
System.err.println("保存签名信息到日志文件出错:" + e.getMessage());
e.printStackTrace();
return;
}
}
/**
* 保存调试信息到日志文件
**/
public void Save_Message_Log(String Message)
{
Save_Message_Log(SignLogFileName,Message);
}
/**
* 保存数据缓冲区到日志文件,用于跟踪和调试
* Desc:表示描述信息
* buf:通信缓冲区
* len:缓冲区长度
**/
public void Save_buffer_log(String Desc,byte[] buf,int len){
try{
PrintWriter out = new PrintWriter(
new BufferedWriter(
new OutputStreamWriter(
new FileOutputStream(SignLogFileName,true)))); //true表示按照Append方式打开文件
out.println("时间:"+(new Date()).toString());
out.println(Desc+":");
for(int i=0;i<len;++i){
out.print("["+Conversion.byteToHexString(buf[i])+"]");
if(((i + 1) % 20)==0)out.println();
}
out.println();
out.flush();
out.close();
} catch (IOException e)
{
System.err.println("保存数据缓冲区出错:" + e.getMessage());
e.printStackTrace();
return;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -