① ASN.1宏定義是什麼意思啊
一、模塊定義:ASN.1的基本單位是模塊,用於定義一個抽象數據類型,ASN.1的模塊實際上是由一些類型定義和值定義構成,類型的定義是說明類型的名稱和類型的格式,值定義是指將什麼樣的具體值賦給某類型,模塊定義的基本形式
<moleIdentifier> DEFINTIONS::=
BEGIN
EXPORTS
AssignmentList
END
其中,moleIdentifier是模塊名,模塊名的第一個字母必須大寫,EXPORTS結構用於定義其它模塊可以移值的類型或值,而IMPORTS結構規定了模塊中某些定義是從其它模塊中移值過來的,AssignmentList部分包含模塊定義的所有類型、值和宏定義
二、宏表示
ASN.1宏提供創建「模板」來定義宏的方法,MIB對象就是採用宏定義模板來定義的
宏表示:ASN.1提供的一種表示機制,用於定義宏
宏定義:用宏表示定義的一種宏,代表一個宏實例的集合
宏實例:用具體的值來定義宏定義中的變數,而產生的實例,代表一種具體的類型,宏定義的模塊形式為:
<macroname> MARCO::=
BEGIN
TYPE NOTATION::=<user
defined type notation>
VALUE
NOTATION::=<user defined value notation>
<supporting syntax>
END
其中macroname是宏名,必須全部大寫,宏定義由類型表示,值表示和支持產生式三部分構成,最後一部分是關於宏定義體中類型的詳細語法說明
三、宏實例的定義
當用一個具體值來代替宏定義中的變數(或參數)時就產生了一個宏實例,它表示了一個實際的ASN.1類型,並且規定了該類型可取值的集合,宏實例的定義首先是對象名,然後是宏定義的名字,最後是宏定義規定的宏體部分
icmpIImsgs OBJECT-TYPE
SYNTAX Countter
ACCESSS read-only
STATUS mandatory
::={icmp 1}
② ASN.1 基本編碼規則 是什麼啊
是在採用開放系統OSI通信協議中用來描述抽象語意的一種語言
③ 安裝補丁時彈出 ASN1異常的數據結尾
可能是補丁下載不完全。在360安裝目錄下的的hotfix文件夾里 ,刪除已經下載的補丁包,點擊360掃描的漏洞後,360右側顯示的詳細信息里,有此補丁的下載鏈接,建議手動使用迅雷等下載工具下載安裝,是否成功!
④ 學習java首先應該該學習什麼
真沒勁。
我推薦的課程:TCP/IP,HTTP,S/MIME,ASN1,X509 ,CSP,PKCS11,WIN32 API,STL......
⑤ ASN.1的數據結構
ASN.1 還能夠定義如下的數據結構類型:
結構 ( SEQUENCE )
列表 ( SEQUENCE OF )
類型選擇 ( CHOICE )
⑥ 標準的數據描述語言ASN.1簡介
在任何需要以數字方式發送信息的地方,ASN.1 都可以發送各種形式的信息(聲頻、視頻、數據等等)。ASN.1 和特定的 ASN.1 編碼規則推進了結構化數據的傳輸,尤其是網路中應用程序之間的結構化數據傳輸,它以一種獨立於計算機架構和語言的方式來描述數據結構。
OSI 協議套中的應用層協議使用了 ASN.1 來描述它們所傳輸的 PDU,這些協議包括:用於傳輸電子郵件的 X.400、用於目錄服務的 X.500、用於 VoIP 的 H.323 和 SNMP。它的應用還可以擴展到通用移動通信系統(UMTS)中的接入和非接入層。
ASN.1 取得成功的一個主要原因是它與幾個標准化編碼規則相關,如基本編碼規則(BER) -X.209 、規范編碼規則(CER)、識別名編碼規則(DER)、壓縮編碼規則(PER)和 XML編碼規則(XER)。這些編碼規則描述了如何對 ASN.1 中定義的數值進行編碼,以便用於傳輸,而不管計算機、編程語言或它在應用程序中如何表示等因素。ASN.1 的編碼方法比許多與之相競爭的標記系統更先進,它支持可擴展信息快速可靠的傳輸 — 在無線寬頻中,這是一種優勢。1984年,ASN.1 就已經成為了一種國際標准,它的編碼規則已經成熟並在可靠性和兼容性方面擁有更豐富的歷程。
簡潔的二進制編碼規則(BER、CER、DER、PER,但不包括 XER)可當作更現代 XML 的替代。然而,ASN.1 支持對數據的語義進行描述,所以它是比 XML 更為高級的語言。
正是由於這種數據類型的「抽象"特性,所以描述它的語法在OSI術語中被稱為抽象語法(abstract syntax).抽象語法定義的數據類型,在傳輸時遵循的數據編碼規則,稱為傳輸語法(transfer syntax).一種ASN.1數據類型對應的傳輸語法可以有多種,但只能使用其中的一種。
ASN.1 的描述可以容易地被映射成 C 或 C++ 或 Java 的數據結構,並可以被應用程序代碼使用,並得到運行時程序庫的支持,進而能夠對編碼和解碼 XML 或 TLV 格式的,或一種非常緊湊的壓縮編碼格式的描述。
同時,ASN.1也是一種用於描述結構化客體的結構和內容的語言。
⑦ 如何用java實現asn1編解碼..急急急急急急急急急!!!
byte[] content=contentStr.getBytes("asn1"); //如果asn1是一種編碼,這就是將字元串轉換成asn1的二進制
然後將這些二進制數據寫入到文件,就是到達你的要求了。
⑧ asn1primitive.java在哪個包裡面
java沒有utils這個類,除非是同事寫的,沒有告訴自己,所以找不到
不過java有 java.util這個package。
包含集合框架、遺留的 collection 類、事件模型、日期和時間設施、國際化和各種實用工具類(字元串標記生成器、隨機數生成器和位數組、日期Date類、堆棧Stack類、向量Vector類等)。集合類、時間處理模式、日期時間工具等各類常用工具包
⑨ asn.1編譯器的商業用途有哪些主要運用於哪些行業
主要運用於通信行業,通信數據結構的編解碼規則很多是用到了ASN.1的編解碼規則,
⑩ ASN.1解碼
首先你要搞到描述這些十六進制流的asn1描述文件,然後去www.asnlab.cn上申請一個試用license,下載他們的asn.1代碼生成工具和編解碼庫,然後入在自己的編譯器上編譯這些生成的代碼和庫,編譯出來的東西就能針對你的這個文件進行解碼了。試用版的license只能使用45天