* Type ํ ๋น
- ์๋ก์ด ํ์
์ ์ ์ ํ๊ณ ๋ช
๋ น ํ ๋ ์ฌ์ฉ
<typereference> ::= <type>
- ํน์ง
* ํ๋ก๊ทธ๋จ ์ธ์ด ์ฒ๋ผ Simple type (INTEGER๋ฑ)์ ๊ฐ์ง
* Simple Type ์ผ๋ก ์๋ก์ด Type ์ ์ ๊ฐ๋ฅ
* ์ํ๋ฒณ, ์ซ์, ํ์ดํ(-) ์ฌ์ฉ ๊ฐ๋ฅ
* type ์ด๋ฆ์ ๋๋ฌธ์๋ก ์์ ํด์ผ ํจ
* ํ์ดํ(-)์ผ๋ก ๋๋๊ฑฐ๋ "--"๋ฅผ ํฌํจ ํ๋ฉด ์๋จ
ex) My-Integer ::= INTEGER
* Type ์ข ๋ฅ
Simple | Structured | Tagged | Other |
BIT STRING IA5STring INTEGER NULL .... |
SEQUENCE SEQUENCE OF SET SET OF ... |
IMPLICIT EXPLICIT |
CHOICE ANY |
- Simple Types
* Atomic Type
* ๋ค๋ฅธ Type๋ค์ Simple Type์ ์ด์ฉํ์ฌ ์ ์ ๋จ
ex) Size ::= INTEGER
- Structed Types
* Types with Components
* SEQUENCE : ์์ํ๋ ๊ฐ๋ค์ ๋ชฉ๋ก
* SEQUENCE OF : ๊ฐ์ Type ์ ์์ํ๋ ๊ฐ๋ค์ ๋ชฉ๋ก
ex) PersonalRecord ::= SEQUENCE {
name OCTET STRING,
age INTEGER }
PersonalFile ::= SEQUENCE OF PersonalRecord
* SET : ์์ํ ๋์ง ์๋ ๊ฐ๋ค์ ๋ชฉ๋ก
* SET OF : ๊ฐ์ Type์ ์์ํ ๋์ง ์๋ ๊ฐ๋ค์ ๋ชฉ๋ก
ex) Building ::= SET {
address OCTET STRING,
occupied BOOLEAN }
- Tagged Types
* Structured Type ๋ด์ Component ๋ค ๊ฐ์ Type์ ์๋ณํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ Tag์ ์ํด ์ ์ ๋๋ Type
* Implicitly Tagged Type : component์ ๊ธฐ๋ณธ Type์ Tag๊ฐ์ ๋ณ๊ฒฝ ํ์ฌ ์๋ก์ด ํ์
์ ์
* Explicitly Tagged Type : component์ ๊ธฐ๋ณธ Type์ Tag๊ฐ์ ์ถ๊ฐํ์ฌ ์๋ก์ด Type ์ ์ ์
- Other Types
* Tag๊ฐ ์๋ Type
* Type์ ์ค์ ๊ฐ์ด ์ ํด์ง๋ ํ ๋น ๋จ
* CHOICE, ANY
'PKI > ASN.1' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ASN.1 Type Notation (3/3) (0) | 2022.11.03 |
---|---|
ASN.1 Type Notation (2/3) (0) | 2022.11.02 |
RFC3280-PKIX1Implicit88 ASN.1 (0) | 2022.11.02 |
RFC3280-PKIX1Explicit88 ASN.1 (0) | 2022.11.02 |
ASN.1 ๊ธฐ๋ณธ ๊ตฌ์กฐ (0) | 2022.11.02 |