# Credential

`Credential`エントリは[資格情報](/ja/docs/concepts/decentralized-storage/credentials)を表し、*対象(subject)* アカウントについての *資格発行者(credential issuer)* アカウントからの証明を含みます。この証明の意味は発行者によって定義されます。

## CredentialのJSONの例


```json
{
    "LedgerEntryType": "Credential",
    "Flags": 65536,
    "Subject": "rsUiUMpnrgxQp24dJYZDhmV4bE3aBtQyt8",
    "Issuer": "ra5nK24KXen9AHvsdFTKHSANinZseWnPcX",
    "IssuerNode": "0000000000000000",
    "CredentialType": "6D795F63726564656E7469616C",
    "PreviousTxnID": "8089451B193AAD110ACED3D62BE79BB523658545E6EE8B7BB0BE573FED9BCBFB",
    "PreviousTxnLgrSeq": 234644,
    "SubjectNode": "0000000000000000",
    "index": "A738A1E6E8505E1FC77BBB9FEF84FF9A9C609F2739E0F9573CDD6367100A0AA9"
}
```

## Credentialのフィールド

[共通フィールド](/ja/docs/references/protocol/ledger-data/common-fields)に加えて、エントリには以下のフィールドがあります。

| フィールド | JSON型 | [内部の型](/ja/docs/references/protocol/binary-format) | 必須？ | 説明 |
|  --- | --- | --- | --- | --- |
| `CredentialType` | 文字列 - 16進数 | Blob | はい | このエントリが表す資格情報の種類を定義する任意のデータ。最小長は1バイトで最大長は64バイトです。 |
| `Expiration` | 数値 | UInt32 | いいえ | 資格情報が期限切れとなる時間([Rippleエポック以降の経過秒数](/ja/docs/references/protocol/data-types/basic-data-types#%E6%99%82%E9%96%93%E3%81%AE%E6%8C%87%E5%AE%9A))。 |
| `Issuer` | 文字列 - [アドレス](/ja/docs/references/protocol/data-types/basic-data-types#%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9) | AccountID | はい | この資格情報を発行したアカウント。 |
| `IssuerNode` | 文字列 | UInt64 | はい | ディレクトリが複数のページで構成される場合に、発行者のディレクトリのどのページがこのエントリにリンクしているかを示すヒント。 |
| `PreviousTxnID` | 文字列 - [ハッシュ](/ja/docs/references/protocol/data-types/basic-data-types#%E3%83%8F%E3%83%83%E3%82%B7%E3%83%A5) | UInt256 | はい | このエントリを最後に変更したトランザクションの識別ハッシュ。 |
| `PreviousTxnLgrSeq` | 数値 | UInt32 | はい | このオブジェクトを最後に変更したトランザクションを含む[レジャーインデックス](/ja/docs/references/protocol/data-types/basic-data-types#%E3%83%AC%E3%82%B8%E3%83%A3%E3%83%BC%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9)。 |
| `Subject` | 文字列 - [アドレス](/ja/docs/references/protocol/data-types/basic-data-types#%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9) | AccountID | はい | この資格情報の対象となるアカウント。 |
| `SubjectNode` | 文字列 | UInt64 | はい | ディレクトリが複数のページで構成される場合に、対象の所有者ディレクトリのどのページがこのエントリにリンクしているかを示すヒント。 |
| `URI` | 文字列 - 16進数 | Blob | いいえ | 資格情報に関する任意の追加データ(例：W3C形式の検証可能な資格情報を取得できるURL)。 |


## Credentialのフラグ

Credentialエントリでは、`Flags`フィールドに以下のフラグを組み合わせることができます：

| フラグ名 | 16進値 | 10進値 | 説明 |
|  --- | --- | --- | --- |
| `lsfAccepted` | `0x00010000` | 65536 | 有効な場合、資格情報の対象者が資格情報を承認したことを示します。そうでない場合、発行者が資格情報を作成しましたが、対象者がまだ承認していないため、有効ではありません。 |


## Credentialの準備金

資格情報エントリは、対象者が資格情報を承認している場合、対象アカウントの所有者準備金の1アイテムとしてカウントされます。そうでない場合、資格情報エントリは発行者アカウントの準備金の1アイテムとしてカウントされます。

## Credential IDのフォーマット

Credentialエントリの一意のIDは、以下の値を順番に連結したもののSHA-512Halfハッシュです。

* `Credential`スペースキー(`0x0044`)
* `Subject`フィールドの値
* `Issuer`フィールドの値
* `CredentialType`フィールドの値