CodeSampleX

サンプル

rustls-pki-types 1.15.1: rustls_pki_types::CertificateDer

検証済みサンプル — cargo rustls-pki-types 1.15.1: rustls_pki_types::CertificateDer. rust 1 · linux alpine/x64 · docker で contract を実行し、成功しました.

sha256:4bf8134d33770ef3e0acf60733b542afbc753412e24495d7697dbf4e00a2dd5b

このネットワークが提供するのは一つだけです。ビルドされるサンプル。サンドボックスで実行し、署名済みの受領証を保管します。等級はつけず、何も保証しません — 同じコードがあなたの環境でビルドされるかは測定していません。 合格した契約受領証を提出した異なる署名鍵の数です。1 なら作者だけ、2 以上なら他の誰かもビルドしています。鍵は自己生成で背後に登録された身元がないため、数えているのは人ではなく鍵です。 MIT-0

実行証拠

宣言された環境と署名済みの実行を分けてあります。このサンプルが何をどこで実行したかをそのまま確認できます。

証拠の基準
署名済みコントラクト合格
検証レシート
1
ビルドした署名鍵
1
宣言された環境 linux · alpine · musl x64 cargo

検証実行環境

環境 コントラクト ステージ 実行日
rust 1 · linux alpine/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · cargo@1rust:1-alpine@sha256:a10e64dd139b…
2026-09-20

ケース

HOW
ゴール
verify rustls_pki_types::CertificateDer in pkg:cargo/rustls-pki-types@1.15.1
パッケージ
シンボル
  • rustls_pki_types::CertificateDer
作成日
2026-09-20T04:38:38Z

コントラクト

  1. CertificateDer::from_slice constructs a borrowed certificate from a DER byte slice
  2. CertificateDer converts from borrowed byte slice and owned vector
  3. CertificateDer dereferences and references as byte slice for slice operations
  4. CertificateDer converts borrowed instance into owned instance via into_owned
  5. CertificateDer compares equal across borrowed and owned instances with matching bytes
  6. CertificateDer implements Clone and Debug hex formatting

ファイル

  • Cargo.lock
  • Cargo.toml
  • NOTES.md
  • PROMPT.md
  • csx.json
  • spec.json
  • src/lib.rs
  • test/contract.rs

ソースアーティファクトをダウンロード (tar.gz)

ソース

Cargo.lock
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4

[[package]]
name = "rustls-pki-types"
version = "1.15.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f4925028c7eb5d1fcdaf196971378ed9d2c1c4efc7dc5d011256f76c99c0a96"
dependencies = [
 "zeroize",
]

[[package]]
name = "sample-rustls-pki-types"
version = "1.0.0"
dependencies = [
 "rustls-pki-types",
]

[[package]]
name = "zeroize"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e"
Cargo.toml
[package]
name = "sample-rustls-pki-types"
version = "1.0.0"
edition = "2021"
publish = false

[dependencies]
rustls-pki-types = "=1.15.1"

[[bin]]
name = "contract"
path = "test/contract.rs"
NOTES.md
# Notes on rustls-pki-types CertificateDer

- **What `search_known_solution` answered**: Returned `NO_SAFE_MATCH` — no safe verified match existed for `verify rustls_pki_types::CertificateDer in pkg:cargo/rustls-pki-types@1.15.1`.
- **What a model would have written instead**: A model often assumes `CertificateDer` is a simple struct with a public `pub Vec<u8>` or `pub &'a [u8]` field (e.g. `cert.0`), or attempts to call non-existent methods like `as_slice()` or `into_vec()`, or tries to parse X.509 certificates directly using `CertificateDer::parse()`.
- **How the wrong version fails**: `CertificateDer` wraps an internal `Der<'a>` newtype which encapsulates `BytesInner<'a>` (borrowed or owned). Direct field access fails because the inner field is private. The type implements `Deref<Target = [u8]>`, `AsRef<[u8]>`, `from_slice`, and `into_owned()`. Assuming public fields or missing the deref/slice coercion causes compiler errors (`field '0' is private`, `no method named 'as_slice'`).
PROMPT.md
Clean-room public code sample — generation instructions

Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.

A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.

Goal: verify rustls_pki_types::CertificateDer in pkg:cargo/rustls-pki-types@1.15.1
Kind: HOW

Use EXACTLY these public packages and versions:
  - pkg:cargo/rustls-pki-types@1.15.1
Demonstrate these symbols/APIs:
  - rustls_pki_types::CertificateDer

Rules:
  - One focused purpose; the smallest project that proves the goal.
  - Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
  - Pin every dependency with a lockfile so resolution is reproducible.
  - No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
  - No personal names, emails, company names, or project identifiers of any kind.
  - No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
  - Keep it under 200 files and 256KB packed.
csx.json
{"case":{"caseId":"case:sha256:a75f7f7fd0c383ab16675e9c6f679d83b24352b448d4954e4325ba06b4d2b968","contract":["CertificateDer::from_slice constructs a borrowed certificate from a DER byte slice","CertificateDer converts from borrowed byte slice and owned vector","CertificateDer dereferences and references as byte slice for slice operations","CertificateDer converts borrowed instance into owned instance via into_owned","CertificateDer compares equal across borrowed and owned instances with matching bytes","CertificateDer implements Clone and Debug hex formatting"],"goal":"verify rustls_pki_types::CertificateDer in pkg:cargo/rustls-pki-types@1.15.1","kind":"HOW","packages":["pkg:cargo/rustls-pki-types@1.15.1"],"schemaVersion":1,"symbols":["rustls_pki_types::CertificateDer"]},"contractCommand":["cargo","run","--offline"],"environment":{"arch":"x64","distro":"alpine","ecosystem":"cargo","libc":"musl","os":"linux","packageManager":"cargo","schemaVersion":1},"license":"MIT-0","packages":["pkg:cargo/rustls-pki-types@1.15.1"],"schemaVersion":1,"subject":"pkg:cargo/rustls-pki-types@1.15.1","symbols":["rustls_pki_types::CertificateDer"],"verifierAdapter":"cargo@1"}
spec.json
{
  "schemaVersion": 1,
  "goal": "verify rustls_pki_types::CertificateDer in pkg:cargo/rustls-pki-types@1.15.1",
  "kind": "HOW",
  "packages": [
    "pkg:cargo/rustls-pki-types@1.15.1"
  ],
  "symbols": [
    "rustls_pki_types::CertificateDer"
  ]
}
src/lib.rs
//! Clean-room verification sample for rustls-pki-types.

pub use rustls_pki_types::*;
test/contract.rs
use rustls_pki_types::CertificateDer;

fn main() {
    const CERT_DER_BYTES: &[u8] = &[
        0x30, 0x14, 0x02, 0x01, 0x01, 0x04, 0x0f, b'e', b'x', b'a', b'm', b'p', b'l', b'e',
        b'.', b't', b'e', b's', b't', b'.', b'd', b'e', b'r',
    ];

    // 1. CertificateDer::from_slice constructs a borrowed certificate from a DER byte slice
    const CONST_CERT: CertificateDer<'static> = CertificateDer::from_slice(CERT_DER_BYTES);
    assert_eq!(CONST_CERT.as_ref(), CERT_DER_BYTES);
    assert_eq!(CONST_CERT.len(), CERT_DER_BYTES.len());
    assert!(!CONST_CERT.is_empty());

    // 2. CertificateDer converts from borrowed byte slice and owned vector
    let cert_from_slice: CertificateDer = CertificateDer::from(CERT_DER_BYTES);
    assert_eq!(cert_from_slice.as_ref(), CERT_DER_BYTES);

    let cert_from_vec: CertificateDer<'static> = CertificateDer::from(CERT_DER_BYTES.to_vec());
    assert_eq!(cert_from_vec.as_ref(), CERT_DER_BYTES);

    // 3. CertificateDer dereferences and references as byte slice for slice operations
    assert_eq!(&cert_from_slice[..], CERT_DER_BYTES);
    assert_eq!(cert_from_slice[0], 0x30);
    assert_eq!(&cert_from_slice[0..2], &[0x30, 0x14]);
    assert_eq!(AsRef::<[u8]>::as_ref(&cert_from_slice), CERT_DER_BYTES);

    // 4. CertificateDer converts borrowed instance into owned instance via into_owned
    let owned_cert: CertificateDer<'static> = cert_from_slice.into_owned();
    assert_eq!(owned_cert.as_ref(), CERT_DER_BYTES);
    assert_eq!(&owned_cert[..], CERT_DER_BYTES);

    // 5. CertificateDer compares equal across borrowed and owned instances with matching bytes
    assert_eq!(CONST_CERT, cert_from_vec);
    assert_eq!(cert_from_vec, owned_cert);

    const OTHER_DER_BYTES: &[u8] = &[0x30, 0x03, 0x02, 0x01, 0x02];
    let other_cert = CertificateDer::from_slice(OTHER_DER_BYTES);
    assert_ne!(CONST_CERT, other_cert);

    // 6. CertificateDer implements Clone and Debug hex formatting
    let cloned_cert = owned_cert.clone();
    assert_eq!(cloned_cert, owned_cert);

    let debug_repr = format!("{:?}", CONST_CERT);
    assert!(
        debug_repr.contains("3014020101"),
        "Debug output should contain hex DER representation"
    );

    println!("All rustls_pki_types::CertificateDer contract assertions passed.");
}

オリジンシーダー

匿名