WEB开发网
开发学院软件开发Java 用 Kerberos 为 J2ME 应用程序上锁,第 3 部分: 建... 阅读

用 Kerberos 为 J2ME 应用程序上锁,第 3 部分: 建立与电子银行的安全通信(上)

 2010-03-30 00:00:00 来源:WEB开发网   
核心提示: isASN1Structure()清单 4 中显示的 isASN1Structure() 方法分析一个输入字节是否表示具有特定标签号的特定类型的 ASN.1 结构(即, 特定于上下文的 (context specific)、应用程序级 (application level) 或者通用类型 (un

isASN1Structure()

清单 4 中显示的 isASN1Structure() 方法分析一个输入字节是否表示具有特定标签号的特定类型的 ASN.1 结构(即, 特定于上下文的 (context specific)、应用程序级 (application level) 或者通用类型 (universal type ))的标签字节(第一个字节)。

这个方法取三个参数。第一个参数( tagByte )是要分析的输入 字节 。第二和第三个参数( tagType 和 tagNumber )分别表示所要查找的标签类型和标签号。

为了检查 tagByte 是否具有所需要的标签号的标签类型, isASN1Structure() 方法首先用 tagType 和 tagNumber 参数构建一个新的临时标签字节( tempTagByte )。然后比较 tempTagByte 与 tagByte 。如果它们是相同的,那么方法就返回 true,如果不相同它就返回 false。

清单 4. isASN1Structure() 方法

  public boolean isASN1Structure (byte tagByte, int tagType, int tagNumber) 
  { 
   byte tempTagByte = (byte) (tagType + tagNumber); 
   if (tagByte == tempTagByte) 
     return true; 
   else 
     return false; 
  }//isASN1Structure 

getNumberOfLengthBytes()

清单 5 显示的 getNumberOfLengthBytes() 方法取一个参数( firstLengthByte )。 firstLengthByte 参数是 ASN.1 结构的第一个长度字节。 getNumberOfLengthBytes() 方法处理第一个长度字节,以计算 ASN.1 结构中长度字节的字节数。这是一个工具方法, ASN1DataTypes 类中的其他方法在需要知道一个 ASN.1 结构的长度字节的字节数时就使用它。

清单 5 中的 getNumberOfLengthBytes() 方法的实现策略如下:

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Kerberos JME 应用程序

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接