์˜์–ดํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

Ad


์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

git-remote-gcrypt - ํด๋ผ์šฐ๋“œ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ git-remote-gcrypt๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ๊ณต๊ธ‰์ž์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” git-remote-gcrypt ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


git-remote-gcrypt - GNU Privacy Guard๋กœ ์•”ํ˜ธํ™”๋œ git remote

๊ธฐ์ˆ 


์›๊ฒฉ ๋„์šฐ๋ฏธ ํ”„๋กœ๊ทธ๋žจ์€ ๋„คํŠธ์›Œํฌ ์ „์†ก์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด git์— ์˜ํ•ด ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค. ์ด ๋„์šฐ๋ฏธ
ํ•ธ๋“ค ์ง€ํฌ๋ฆฝํŠธ:: Google์„ ์‚ฌ์šฉํ•˜์—ฌ GPG๋กœ ์•”ํ˜ธํ™”๋œ ์›๊ฒฉ ์ €์žฅ์†Œ์— ์•ก์„ธ์Šคํ•  URL
์‚ฌ์šฉ์ž ์ •์˜ ํ˜•์‹.

์ง€์›๋˜๋Š” ์œ„์น˜๋Š” ์ง€๋ฐฉ์˜, rsync:// ๊ณผ sftp : //, ์—ฌ๊ธฐ์„œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋Š”
ํŒŒ์ผ ์„ธํŠธ ๋˜๋Š” ๋Œ€์‹  ์—ฌ๊ธฐ์„œ gcrypt๋Š” ๋™์ผํ•œ ํ‘œํ˜„์„
์ž„์˜์˜ git ์ „์†ก์„ ํ†ตํ•ด ์—ฐ๊ฒฐ๋˜๋Š” git ์ €์žฅ์†Œ.

๋ชฉํ‘œ๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ๋ฐ€์˜ ์ธ์ฆ๋œ git ์Šคํ† ๋ฆฌ์ง€ ๋ฐ ํ˜‘์—…์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ผ๋ฐ˜์ ์ธ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ํŒŒ์ผ ํ˜ธ์ŠคํŠธ ๋˜๋Š” ์„œ๋น„์Šค. ์šฐ๋ฆฌ๊ฐ€ ์ด๊ฒƒ์„ ์–ผ๋งˆ๋‚˜ ์ž˜ ์ถฉ์กฑํ•˜๋Š”์ง€ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ์„ธ์š”.
๋””์ž์ธ ๋ชฉํ‘œ!

์•Œ๋ฆผ:
์ด๊ฒƒ์€ ๊ฐœ๋ฐœ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค -- ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํ˜•์‹์€ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋น ๋ฅธ ์‹œ์ž‘
ยท ์„ค์น˜ํ•˜๋‹ค ์ž์‹-์›๊ฒฉ-gcrypt ์ œ๊ณต๋œ ์‹คํ–‰์œผ๋กœ ์„ค์น˜.sh ์Šคํฌ๋ฆฝํŠธ.

ยท ํ‘ธ์‹œํ•˜์—ฌ ์•”ํ˜ธํ™”๋œ ์›๊ฒฉ ์ƒ์„ฑ:

git ์›๊ฒฉ ์ถ”๊ฐ€ cryptremote gcrypt::rsync://example.com:repo
git push cryptremote ๋งˆ์Šคํ„ฐ
> gcrypt: ์ƒˆ ์ €์žฅ์†Œ ์„ค์ •
> gcrypt: ์›๊ฒฉ ID:id:7VigUnLVYVtZx8oir34R
> [ ๋” ๋งŽ์€ ๋ผ์ธ .. ]
> gcrypt๋กœ::[...]
> * [์ƒˆ ๋ธŒ๋žœ์น˜] ๋งˆ์Šคํ„ฐ -> ๋งˆ์Šคํ„ฐ

๊ตฌ์„ฑ


๋‹ค์Œ ์ž์‹ ๊ตฌ์„ฑ(1) ๋ณ€์ˆ˜๊ฐ€ ์ง€์›๋ฉ๋‹ˆ๋‹ค:

์›๊ฒฉ. .gcrypt ์ฐธ๊ฐ€์ž

gcrypt.์ฐธ๊ฐ€์ž
๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋œ GPG ํ‚ค ์‹๋ณ„์ž ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ๋ฆฌ๋ชจ์ปจ์€ ๋‹ค์Œ์œผ๋กœ ์•”ํ˜ธํ™”๋ฉ๋‹ˆ๋‹ค.
์ฐธ๊ฐ€์ž์™€ ์ด๋“ค์˜ ์„œ๋ช…๋งŒ ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค. gpg -k ๋ชจ๋“  ๊ณต๊ฐœ ๋ชฉ๋ก
์•Œ๊ณ  ์žˆ๋Š” ํ‚ค.

์ด ์˜ต์…˜์„ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ ํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•˜๊ณ  ์œ ํšจํ•œ ํ‚ค๋ฅผ ์ˆ˜๋ฝํ•ฉ๋‹ˆ๋‹ค.
์„œ๋ช…. ์ด ๋™์ž‘์€ ์ฐธ๊ฐ€์ž๋ฅผ ์„ค์ •ํ•˜์—ฌ ๋ช…์‹œ์ ์œผ๋กœ ์š”์ฒญํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
์— ๊ฐ„ํŽธํ•œ ์„ค์น˜.

XNUMXD๋ดํƒˆ์˜ gcrypt ์ฐธ๊ฐ€์ž ๋ฆฌ๋ชจ์ฝ˜์˜ ์„ค์ •์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค.
๋ณ€์ˆ˜ gcrypt.์ฐธ๊ฐ€์ž.

์›๊ฒฉ. .gcrypt-๊ฒŒ์‹œ-์ฐธ๊ฐ€์ž

gcrypt.publish-์ฐธ๊ฐ€์ž
๊ธฐ๋ณธ์ ์œผ๋กœ ์ฐธ๊ฐ€์ž์˜ gpg ํ‚ค ID๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๊ฐ€๋ ค์ง‘๋‹ˆ๋‹ค.
gpg -R. ์ด ์˜ต์…˜์„ ๋‹ค์Œ์œผ๋กœ ์„ค์ • ์ฐธ๋œ ํ•ด๋‹น ๋ณด์•ˆ ์กฐ์น˜๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฌธ์ œ gpg -R gpg๋Š” ์•”ํ˜ธ๋ฅผ ํ•ด๋…ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฐ ๋น„๋ฐ€์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ‚ค๋ฅผ ์ฐพ์„ ๋•Œ๊นŒ์ง€ ์ฐจ๋ก€๋กœ ํ‚ค๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋ถˆํ•„์š”ํ•œ ์•”ํ˜ธ๊ฐ€ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ”„๋กฌํ”„ํŠธ.

์›๊ฒฉ. .gcrypt ์„œ๋ช… ํ‚ค

์‚ฌ์šฉ์ž ์„œ๋ช… ํ‚ค
(์ผ๋ฐ˜ git ๊ตฌ์„ฑ์˜ ํ›„์ž) ์„œ๋ช…์— ์‚ฌ์šฉํ•  ํ‚ค์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ํ•ด์•ผ
์„ธํŠธ ์‚ฌ์šฉ์ž ์„œ๋ช… ํ‚ค ๊ธฐ๋ณธ ์„œ๋ช… ํ‚ค๊ฐ€ ์ฐธ๊ฐ€์ž์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ
๋ชฉ๋ก. ์›๊ฒฉ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ์›๊ฒฉ ์žฅ์น˜์— ์„œ๋ช…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์—ด์‡ .

ํ™˜๊ฒฝ ๋ณ€์ˆ˜


GCRYPT_FULL_REPACK
์ด ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋Š” ํ‘ธ์‹œํ•  ๋•Œ ์ „์ฒด ์žฌ์••์ถ•์„ ๊ฐ•์ œํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์˜ˆ


๋‘ ๋ช…์˜ ์ฐธ๊ฐ€์ž๋ฅผ ์œ„ํ•œ ๋ฆฌ๋ชจ์ปจ์„ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•:

git ์›๊ฒฉ ์ถ”๊ฐ€ cryptremote gcrypt::rsync://example.com:repo
git config remote.cryptremote.gcrypt-์ฐธ๊ฐ€์ž "KEY1 KEY2"
git push cryptremote ๋งˆ์Šคํ„ฐ

Git ๋ฐฑ์—”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•:

# ๋Œ€์ƒ git repo๊ฐ€ โ€‹โ€‹์ด๋ฏธ ์กด์žฌํ•ด์•ผ ํ•˜๋ฉฐ
# `next` ๋ถ„๊ธฐ๋ฅผ ๋ฎ์–ด์”๋‹ˆ๋‹ค!
git ์›๊ฒฉ ์ถ”๊ฐ€ gitcrypt gcrypt::[์ด๋ฉ”์ผ ๋ณดํ˜ธ]:repo#๋‹ค์Œ
git push gitcrypt ๋งˆ์Šคํ„ฐ

URL ์กฐ๊ฐ(#๋‹ค์Œ ์—ฌ๊ธฐ)๋Š” ์‚ฌ์šฉ๋˜๋Š” ๋ฐฑ์—”๋“œ ๋ถ„๊ธฐ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๋…ธํŠธ


ํ˜‘์—…
์ฐธ๊ฐ€์ž์™€ ์ผ์น˜ํ•˜๋„๋ก ๊ฐ ํ‘ธ์‹œ์— ๋Œ€ํ•ด ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์•”ํ˜ธํ™”๊ฐ€ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.
๊ตฌ์„ฑ. ๊ฐ ํ‘ธ์‹œ ์‚ฌ์šฉ์ž๋Š” ๋ชจ๋“  ํ˜‘๋ ฅ์ž์˜ ๊ณต๊ฐœ ํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์•ผ ํ•˜๋ฉฐ
์˜ฌ๋ฐ”๋ฅธ ์ฐธ๊ฐ€์ž ๊ตฌ์„ฑ.

์ข…์†์„ฑ
rsync ๊ณผ ์ปฌ ๋ฆฌ๋ชจ์ปจ์šฉ ์žฌ๋™๊ธฐํ™”: ๊ณผ SFTP: ๊ฐ๊ธฐ. ์ฃผ์š” ์‹คํ–‰ ํŒŒ์ผ
์ง€์›ํ•˜๋Š” POSIX ํ˜ธํ™˜ ์…ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ง€๋ฐฉ์˜.

GNU ๊ฐœ์ธ์ •๋ณด๋ณดํ˜ธ ์Šคํ…Œ์ด๋ธ” ๊ฐ€๋“œ
GPG 1.4 ๋ฐ 2 ๋ชจ๋‘ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ๊ฐœ์ธ GPG ํ‚ค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. GPG ๊ตฌ์„ฑ
๊ณต๊ฐœ ํ‚ค ์•”ํ˜ธํ™”, ๋Œ€์นญ ์•”ํ˜ธํ™” ๋ฐ
์„œ๋ช…. ๋ณด๋‹ค ์‚ฌ๋žŒ gpg

์›๊ฒฉ์ˆ˜ํ–‰ ID
์›๊ฒฉ ID๋Š” ๋น„๋ฐ€์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋‹จ์ง€ ๋‘ ๊ฐœ์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€
๋™์ผํ•œ ์‚ฌ์šฉ์ž๋ฅผ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›๊ฒฉ ID๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
๋ฆฌ๋ชจ์ปจ์ด ๋‹ค์‹œ ์ƒ์„ฑ๋œ ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ €์žฅ์†Œ ํ˜•์„ฑ
EncSign(X): GPG ํ‚ค ํ™€๋”์— ์„œ๋ช… ๋ฐ ์•”ํ˜ธํ™”
์•”ํ˜ธํ™”(K,X): ๋Œ€์นญ ํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”
ํ•ด์‹œ(X): SHA-2/256

B: ๋ถ„๊ธฐ ๋ชฉ๋ก
L: ํ•ด์‹œ ๋ชฉ๋ก(Hi) ๋ฐ ํ‚ค(Ki) ๊ฐ ํŒฉ ํŒŒ์ผ์— ๋Œ€ํ•ด
R: ์›๊ฒฉ ID

๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์‹ญ์‹œ์˜ค.

๊ฐ ํŒฉ ํŒŒ์ผ ์ €์žฅ P as ์•”ํ˜ธํ™”(Ki, P) โ†’ P' ํŒŒ์ผ ์ด๋ฆ„์— Hi
์–ด๋””์— Ki ์ƒˆ๋กœ์šด ์ž„์˜์˜ ๋ฌธ์ž์—ด์ด๊ณ  ํ•ด์‹œ(P') โ†’ Hi
์Šคํ† ์–ด EncSign(B || L || R) ๋งค๋‹ˆํŽ˜์ŠคํŠธ์—์„œ

์ €์žฅ์†Œ๋ฅผ ์ฝ์œผ๋ ค๋ฉด:

GPG ํ‚ค๋ง์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ๊ฐ€์ ธ์˜ค๊ธฐ, ํ•ด๋… ๋ฐ ํ™•์ธ โ†’ (NS, L, R)
๋‹ค์Œ ๊ฒฝ์šฐ ๊ฒฝ๊ณ  R ์ด์ „์— ๋ณธ ์›๊ฒฉ ID์™€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ฐ๊ฐ ์•ˆ๋…•, Ki in L:
ํŒŒ์ผ ๊ฐ€์ ธ์˜ค๊ธฐ Hi ์„œ๋ฒ„์—์„œ โ†’ P'
ํ™•์ธ ํ•ด์‹œ(P') ์„ฑ๋ƒฅ Hi
ํ•ด๋… P' ์‚ฌ์šฉ Ki โ†’ P ๊ทธ ๋‹ค์Œ์— ์—ด๋‹ค. P ์ž์‹์œผ๋กœ

์ ํ•˜ ๋ชฉ๋ก ํŒŒ์ผ
์˜ˆ์ œ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ํŒŒ์ผ(๊ฐ„๊ฒฐ์„ฑ์„ ์œ„ํ•ด ์ค„์ž„ํ‘œ ํฌํ•จ):

$ gpg -d 91bd0c092128cf2e60e1a608c31e92caf1f9c1595f83f2890ef17c0e4881aa0a
542051c7cd152644e4995bda63cc3ddffd635958 refs/heads/next
3c9e76484c7596eff70b21cbe58408b2774bedad refs/heads/master
pack :SHA256:f2ad50316...cd4ba67092dc4 z8YoAnFpMlW...3PkI2mND49P1qm
pack :SHA256:a6e17bb4c...426492f379584 82+k2cbiUn7...dgXfyX6wXGpvVa
keep :SHA256:f2ad50316...cd4ba67092dc4 1
์ €์žฅ์†Œ :id:OYiSleGirtLubEVqJpFF

๊ฐ ํ•ญ๋ชฉ์€ ์ƒˆ ์ค„๊นŒ์ง€ ํ™•์žฅ๋˜๋ฉฐ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.


ํž˜๋‚ด ๊ฐœ์ฒด ID ๋ฐ ์ฐธ์กฐ

ํŒฉ : :
ํŒฉ ํŒŒ์ผ ํ•ด์‹œ(Hi) ๋ฐ ํ•ด๋‹น ๋Œ€์นญ ํ‚ค(Ki).

์œ ์ง€ : :
Packfile ํ•ด์‹œ ๋ฐ ํ•ด๋‹น ๋ฆฌํŒฉ ์ƒ์„ฑ

REPO
์›๊ฒฉ ID

๋‚ด์„  ...
๋ณด์กด๋˜์ง€๋งŒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํ™•์žฅ ํ•„๋“œ.

๊ฐ์ง€ ์ค‘ GCRYPT REST


git url์ด gcrypt ์ €์žฅ์†Œ์ธ์ง€ ๊ฐ์ง€ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. git-remote-gcrypt --check url ์ข…๋ฃŒ ์ƒํƒœ if
์ €์žฅ์†Œ๊ฐ€ ์กด์žฌํ•˜๊ณ  ํ•ด๋…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ 0, ์ €์žฅ์†Œ๊ฐ€ gcrypt๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ 1
๋ณตํ˜ธํ™”๋˜๊ณ  ์ €์žฅ์†Œ๊ฐ€ gcrypt๋กœ ์•”ํ˜ธํ™”๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ(๋˜๋Š” ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ) 100์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ repo ๋‚ด์šฉ์„ ๋กœ์ปฌ git ์ €์žฅ์†Œ๋กœ ๊ฐ€์ ธ์™€์•ผ ํ•œ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค.
gcrypt ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์—์„œ git-remote-gcrypt ์‚ฌ์šฉ


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

  • 1
    ํŽ˜์ด์ €
    ํŽ˜์ด์ €
    Phaser๋Š” ๋น ๋ฅด๊ณ  ๋ฌด๋ฃŒ์ด๋ฉฐ ์žฌ๋ฏธ์žˆ๋Š” ๊ณต๊ฐœ ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค.
    ์ œ๊ณตํ•˜๋Š” ์†Œ์Šค HTML5 ๊ฒŒ์ž„ ํ”„๋ ˆ์ž„์›Œํฌ
    WebGL ๋ฐ ์บ”๋ฒ„์Šค ๋ Œ๋”๋ง
    ๋ฐ์Šคํฌํ†ฑ ๋ฐ ๋ชจ๋ฐ”์ผ ์›น ๋ธŒ๋ผ์šฐ์ €. ๊ณ„๋žต
    ๊ณต๋™ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ...
    ํŽ˜์ด์ € ๋‹ค์šด๋กœ๋“œ
  • 2
    ๋ฐ”์‚ด ์—”์ง„
    ๋ฐ”์‚ด ์—”์ง„
    VASSAL์€ ์ œ์ž‘์„ ์œ„ํ•œ ๊ฒŒ์ž„ ์—”์ง„์ž…๋‹ˆ๋‹ค.
    ๊ธฐ์กด ๋ณด๋“œ์˜ ์ „์ž ๋ฒ„์ „
    ๊ทธ๋ฆฌ๊ณ  ์นด๋“œ ๊ฒŒ์ž„. ๋‹ค์Œ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
    ๊ฒŒ์ž„ ์กฐ๊ฐ ๋ Œ๋”๋ง ๋ฐ ์ƒํ˜ธ ์ž‘์šฉ,
    ๊ทธ๋ฆฌ๊ณ  ...
    VASSAL ์—”์ง„ ๋‹ค์šด๋กœ๋“œ
  • 3
    OpenPDF - iText์˜ ํฌํฌ
    OpenPDF - iText์˜ ํฌํฌ
    OpenPDF๋Š” ๋‹ค์Œ์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ Java ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค.
    ๋ฐ LGPL๋กœ PDF ํŒŒ์ผ ํŽธ์ง‘ ๋ฐ
    MPL ์˜คํ”ˆ ์†Œ์Šค ๋ผ์ด์„ ์Šค. OpenPDF๋Š”
    iText์˜ LGPL/MPL ์˜คํ”ˆ ์†Œ์Šค ํ›„๊ณ„์ž,
    ์—์ด...
    OpenPDF ๋‹ค์šด๋กœ๋“œ - iText ํฌํฌ
  • 4
    ์‚ฌ๊ฐ€ GIS
    ์‚ฌ๊ฐ€ GIS
    SAGA - ์ž๋™ํ™” ์‹œ์Šคํ…œ
    Geoscientific ๋ถ„์„ - ์ง€๋ฆฌ์ ์ž…๋‹ˆ๋‹ค
    ์ •๋ณด ์‹œ์Šคํ…œ(GIS) ์†Œํ”„ํŠธ์›จ์–ด
    ์ง€๋ฆฌ ๋ฐ์ดํ„ฐ๋ฅผ ์œ„ํ•œ ์—„์ฒญ๋‚œ ๊ธฐ๋Šฅ
    ์ฒ˜๋ฆฌ ๋ฐ ์•„๋‚˜...
    ์‚ฌ๊ฐ€ GIS ๋‹ค์šด๋กœ๋“œ
  • 5
    Java/JTOpen์šฉ ๋„๊ตฌ ์ƒ์ž
    Java/JTOpen์šฉ ๋„๊ตฌ ์ƒ์ž
    IBM Toolbox for Java / JTOpen์€
    ์ง€์›ํ•˜๋Š” Java ํด๋ž˜์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
    ํด๋ผ์ด์–ธํŠธ/์„œ๋ฒ„ ๋ฐ ์ธํ„ฐ๋„ท ํ”„๋กœ๊ทธ๋ž˜๋ฐ
    OS/400์„ ์‹คํ–‰ํ•˜๋Š” ์‹œ์Šคํ…œ์— ๋ชจ๋ธ,
    i5/OS, ์˜ค...
    Java/JTOpen์šฉ ๋„๊ตฌ ์ƒ์ž ๋‹ค์šด๋กœ๋“œ
  • 6
    D3.js
    D3.js
    D3.js(๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ๋ฌธ์„œ์˜ ๊ฒฝ์šฐ D3)
    ํ•  ์ˆ˜ ์žˆ๋Š” JavaScript ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค.
    ๋™์ , ๋Œ€ํ™”ํ˜• ๋ฐ์ดํ„ฐ ์ƒ์„ฑ
    ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ์‹œ๊ฐํ™”. D3์™€ ํ•จ๊ป˜
    ๋‹น์‹ ...
    D3.js ๋‹ค์šด๋กœ๋“œ
  • ๋”ยป

Linux ๋ช…๋ น

Ad