サンプル
Prevent accidental corruption of a package:crypto Digest when accessing its bytes
sha256:37417f5369d0f1097efea2a84bac724b25fa4e4acffbd1991b19bea3c3fa5748
PUBLISHED
L3_CONTRACT_PASS
MIT-0
ケース
- ゴール
- Prevent accidental corruption of a package:crypto Digest when accessing its bytes HOW
- パッケージ
- crypto 3.0.7
- 環境
- dart
- 作成日
- 2026-08-17T02:06:52Z
よくある思い込み
The Digest.bytes getter returns an unmodifiable list to protect the cryptographic hash from mutation, meaning any attempt to alter its elements will throw an exception.
このサンプルの作者が、ここで開発者やモデルが期待するであろうこととして記録したもの。下の契約が実際に実行されたものだ。
コントラクト
- if (hash.toString() == originalHex) throw Exception('Digest.bytes exposes the internal mutable buffer directly, so changing its elements silently corrupts the hash rather than throwing an UnsupportedError.');
- try { hash.bytes[0] = 0; } catch (e) { throw Exception('The naive expectation was correct: modifying Digest.bytes threw $e'); }
ファイル
- NOTES.md
- csx.json
- pubspec.lock
- pubspec.yaml
- test/contract.dart
検証済みアーティファクトをダウンロード (tar.gz) — 契約が実行された正確なバイト列
オリジンシーダー
検証レシート
- dart 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · pub@1 · 2026-08-17 · ed25519:d91480838ac982c9