2012-01-12 35 views
5

Tôi muốn thực hiện một số giao thức bằng cách sử dụng asn.1 vì vậy những gì tôi phải làm cấu trúc khai báo và gắn thẻ có tên trong một số tệp tiêu đề và thực thi quy tắc mã hóa của asn.1 làm hàm. Bạn có thể gợi ý cho tôi một số hướng dẫn hoặc cuốn sách để tham khảo. Tôi không biết cách viết mã cho nó.Làm thế nào để làm việc trên ASN.1 và cấu trúc impliment trong đó?

Trả lời

3

Vì vậy ASN.1 không phải là thực sự một cái gì đó bạn viết mã cho nó chỉ là tên của một tiêu chuẩn để xác định các giao thức truyền thông khác nhau (thường mã hóa, truyền tải, vv)

Tôi ngạc nhiên rằng bạn rõ ràng là thiên đường' t đã có một ngây ngô tại
http://en.wikipedia.org/wiki/Asn.1

vì đây đi qua definitons cơ bản cũng như cung cấp nhiều nguồn lực về chủ đề này bao gồm một số cuốn sách và ví dụ về các tiêu chuẩn mã hóa thông thường khác nhau quy định tại ASN.1 (ví dụ DER, BER, vv)

Điều đó sẽ giúp bạn bắt đầu như bạn đã không thực sự chỉ ra nếu có một số thực hiện cụ thể bạn đang làm việc trên hoặc thực sự bất cứ điều gì khác về vấn đề bạn đang gặp phải.

+0

Tôi cố gắng để thực hiện mms (sản xuất đặc điểm kỹ thuật message) giao thức bằng cách sử dụng ký hiệu ASN.1 vì vậy tôi cần một dòng hướng dẫn mà làm thế nào để xác định cấu trúc cho giao thức của tôi .Đối với ví dụ trong wiki họ đưa ra một ví dụ về một cấu trúc FOOQuestion bởi SEQUENCE nhưng nó không phải là một cách để định nghĩa các cấu trúc trong c. – tod

+0

tệp cấu trúc dữ liệu đó là một số tệp cụ thể asn.1 ?? – tod

+0

@tod Bạn cần có tài liệu ASN.1 hiện có cho MMS. Từ đó, bạn có thể sử dụng trình tạo mã để tạo ra C. Trình tạo mã sẽ lấy tài liệu ASN.1 làm đầu vào và tạo các cấu trúc C tương ứng với các phương thức mã hóa và giải mã đi kèm. Nếu không, bạn sẽ phải làm những gì trình tạo mã thực hiện bằng tay - tìm ra các ánh xạ hợp lý từ các cấu trúc ASN.1 tới các cấu trúc C, và sau đó viết logic mã hóa/giải mã.Bạn có thể muốn xem [website] của chúng tôi (http://www.obj-sys.com) - chúng tôi chỉ bán một bộ tạo mã như vậy. Tất nhiên, có những người khác ra khỏi đó. – Kevin

4

Nếu bạn chưa quen với ASN.1, hãy xem "ASN.1 Made Simple" - http://www.oss.com/asn1/resources/asn1-made-simple/introduction.html - cung cấp cho bạn một giới thiệu đơn giản về ASN.1. Ngoài ra còn có một vài cuốn sách tốt có sẵn như là một tải về miễn phí tại http://www.oss.com/asn1/resources/books-whitepapers-pubs/asn1-books.html mà cung cấp cho bạn một cái nhìn toàn diện hơn nhiều.

Trang web này sẽ không cho phép tôi đăng nhiều hơn hai liên kết cho mỗi thư, vì vậy sẽ có thêm thông tin trong một bài đăng riêng biệt.

5

Phần 2

Nếu bạn có một đặc điểm kỹ thuật ASN.1, đặt cược tốt nhất của bạn là để có được một trình biên dịch ASN.1 mà đọc thông số kỹ thuật ASN.1 và tạo mã trong hoặc C, C++, C#, Java hay tương ứng với cấu trúc ASN.1. Có rất nhiều công cụ ASN.1 thương mại và miễn phí, và nhiều công cụ ASN.1 bắt buộc cung cấp các bản dùng thử miễn phí. Bạn có thể xem danh sách các công cụ ASN.1 tốt tại http://www.itu.int/ITU-T/asn1/links/index.htm, nơi bạn cũng có thể tìm thấy thông tin hữu ích bổ sung về ASN.1.

Sử dụng công cụ ASN.1 tốt làm nhiệm vụ phát triển của bạn rất đơn giản vì bạn không phải lo lắng về tất cả các chi tiết về việc nhận các bit chính xác trên dòng chính xác. Công cụ xử lý việc này cho bạn. Bạn tập trung vào cấu trúc dữ liệu C hoặc C++, C# hoặc đối tượng Java trong khi công cụ ASN.1 xử lý việc chuyển đổi đến và từ chuỗi các bit được gửi qua dòng.

Nếu bạn không có đặc tả ASN.1, tốt nhất bạn nên sử dụng công cụ ASN.1 tốt để hướng dẫn bạn tạo đặc tả ASN.1 của mình. Sách và hướng dẫn có liên kết nằm trong thư đầu tiên của tôi là một nơi tốt để bắt đầu nếu bạn cần tạo đặc tả riêng của mình.

Paul

+0

cảm ơn paul hỗ trợ ur và refrences bạn trao cho tôi – tod

Các vấn đề liên quan