์ปดํŒŒ์ผ

์†Œ์Šค์—์„œ ์ปดํŒŒ์ผ

๋ฆด๋ฆฌ์Šค ์ปดํŒŒ์ผ

# make ์‚ฌ์šฉ (๊ถŒ์žฅ)
make release

# ๋˜๋Š” cargo ์ง์ ‘ ์‚ฌ์šฉ
cargo build --release --target x86_64-unknown-linux-musl

๊ฒฐ๊ณผ ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ๋‹ค์Œ ์œ„์น˜์— ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค:

target/x86_64-unknown-linux-musl/release/ssh-frontiere

์ด๊ฒƒ์€ ์•ฝ 1 Mo์˜ ์ •์  ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ, ์‹œ์Šคํ…œ ์˜์กด์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  Linux x86_64 ์„œ๋ฒ„์— ์ง์ ‘ ๋ณต์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ™•์ธ

# ๋ฐ”์ด๋„ˆ๋ฆฌ ์œ ํ˜• ํ™•์ธ
file target/x86_64-unknown-linux-musl/release/ssh-frontiere
# ELF 64-bit LSB executable, x86-64, statically linked

# ํฌ๊ธฐ ํ™•์ธ
ls -lh target/x86_64-unknown-linux-musl/release/ssh-frontiere
# ~1-2 Mo

๋””๋ฒ„๊ทธ ์ปดํŒŒ์ผ

๊ฐœ๋ฐœ์šฉ:

make build
# ๋˜๋Š”
cargo build

ํ…Œ์ŠคํŠธ

๋ฐฐํฌ ์ „์— ํ…Œ์ŠคํŠธ๊ฐ€ ํ†ต๊ณผํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”:

# ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๋ฐ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ
make test

# ๋ฆฐํŠธ (ํฌ๋งทํŒ… + clippy)
make lint

# ์˜์กด์„ฑ ๊ฐ์‚ฌ
make audit

๋ณด์กฐ ๋ฐ”์ด๋„ˆ๋ฆฌ: proof

์ธ์ฆ proof๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•œ ๋ณด์กฐ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค:

cargo build --release --target x86_64-unknown-linux-musl --bin proof

์ด ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ SHA-256 ๊ณ„์‚ฐ์„ ๊ตฌํ˜„ํ•˜์ง€ ์•Š๊ณ ๋„ ์ฑŒ๋ฆฐ์ง€-์‘๋‹ต ์ธ์ฆ์„ ํ…Œ์ŠคํŠธํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.


๋‹ค์Œ: ๊ตฌ์„ฑ โ€” config.toml ํŒŒ์ผ ์ค€๋น„.