1<!DOCTYPE html> 2<html lang="en-US" dir="ltr"> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1"> 6 <title>ageã使ã£ã¦ãã¡ã¤ã«ãæå·åãã¦ã¿ã | å¦çãã¡ã®æè¡ããã°</title> 7 <meta name="description" content="ç´æçã«çè§£ãã¥ãããã¡ã¤ã«ã®æå·åãç°¡åã«ã§ãããã¼ã«ageãç´¹ä»"> 8 <meta name="generator" content="VitePress v1.6.3"> 9 <link rel="preload stylesheet" href="/assets/style.ofBjCEtq.css" as="style"> 10 <link rel="preload stylesheet" href="/vp-icons.css" as="style"> 11 12
12<script type="module" src="/assets/app.Btev9-JB.js"></script>
12 13 <link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> 14 <link rel="modulepreload" href="/assets/chunks/framework.CmsrXLN2.js"> 15 <link rel="modulepreload" href="/assets/chunks/theme.xfW5Djw4.js"> 16 <link rel="modulepreload" href="/assets/chunks/katex.ChWnQ-fc.js"> 17 <link rel="modulepreload" href="/assets/chunks/dagre-FFZHY6LT.CjyuyzO8.js"> 18 <link rel="modulepreload" href="/assets/chunks/c4Diagram-6F6E4RAY.BTh60Apf.js"> 19 <link rel="modulepreload" href="/assets/chunks/flowDiagram-PKI6S5ZS.BlOgvB_k.js"> 20 <link rel="modulepreload" href="/assets/chunks/erDiagram-R3QVA2FD.fxCDRYX2.js"> 21 <link rel="modulepreload" href="/assets/chunks/gitGraphDiagram-GW3U2K7C.vh4lvYxX.js"> 22 <link rel="modulepreload" href="/assets/chunks/ganttDiagram-EK5VF46D.6X5bwtCm.js"> 23 <link rel="modulepreload" href="/assets/chunks/infoDiagram-XT3IWWJI.CnoxQs88.js"> 24 <link rel="modulepreload" href="/assets/chunks/pieDiagram-NIOCPIFQ.bToBWpCi.js"> 25 <link rel="modulepreload" href="/assets/chunks/quadrantDiagram-2OG54O6I.LbUZ_9aZ.js"> 26 <link rel="modulepreload" href="/assets/chunks/xychartDiagram-H2YORKM3.CC1b80LN.js"> 27 <link rel="modulepreload" href="/assets/chunks/requirementDiagram-SO3GGRV7.DNu0EAvr.js"> 28 <link rel="modulepreload" href="/assets/chunks/sequenceDiagram-ZIKVLSP4.DpVlfvf7.js"> 29 <link rel="modulepreload" href="/assets/chunks/classDiagram-BGRH5UQR.DWI8COmP.js"> 30 <link rel="modulepreload" href="/assets/chunks/classDiagram-v2-O24JOBDK.DWI8COmP.js"> 31 <link rel="modulepreload" href="/assets/chunks/stateDiagram-XX37X6EN.CKNWgOP5.js"> 32 <link rel="modulepreload" href="/assets/chunks/stateDiagram-v2-GD6S3NHB.BpGAgcBP.js"> 33 <link rel="modulepreload" href="/assets/chunks/journeyDiagram-EWQZEKCU.Mr20EXFF.js"> 34 <link rel="modulepreload" href="/assets/chunks/timeline-definition-RI47OAVP.DaU5jXef.js"> 35 <link rel="modulepreload" href="/assets/chunks/mindmap-definition-CZNETY7S.BcLeOqhw.js"> 36 <link rel="modulepreload" href="/assets/chunks/kanban-definition-ILFWEQ3N.Ce1gjRLR.js"> 37 <link rel="modulepreload" href="/assets/chunks/sankeyDiagram-4UZDY2LN.WXNx8qfP.js"> 38 <link rel="modulepreload" href="/assets/chunks/diagram-5UYTHUR4.eZPZbeAi.js"> 39 <link rel="modulepreload" href="/assets/chunks/diagram-ZTM2IBQH.BVRWFjF2.js"> 40 <link rel="modulepreload" href="/assets/chunks/blockDiagram-PHRCVELO.BvGBElWu.js"> 41 <link rel="modulepreload" href="/assets/chunks/architectureDiagram-NQ2NVSRB.BLmAEpSo.js"> 42 <link rel="modulepreload" href="/assets/chunks/diagram-3EMPZRKU.BDpoDJet.js"> 43 <link rel="modulepreload" href="/assets/chunks/virtual_mermaid-config.DDnGl6nM.js"> 44 <link rel="modulepreload" href="/assets/post_age.md.CK70qJz5.lean.js"> 45 <link rel="shortcut icon" href="data:image/x-icon;," type="image/x-icon">
vendor: 68 bytes, lines 45-46
45 46 <script async src="https://www.googletagmanager.com/gtag/js?id=
46G-SBRRP4LRT6
vendor: 16 bytes, lines 46-47
46"></script> 47
47<script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-SBRRP4LRT6");</script>
47 48
48<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
48 49
49<script>(adsbygoogle=window.adsbygoogle||[]).push({google_ad_client:"ca-pub-1395471808093411",enable_page_level_ads:!0});</script>
49 50
50<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
50 51
51<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
51 52 </head> 53 <body> 54 <div id="app"><div class="Layout" data-v-5d98c3a5><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0b0ada53></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0b0ada53>Skip to content</a><!--]--><!----><header class="VPNav" data-v-5d98c3a5 data-v-ae24b3ad><div class="VPNavBar" data-v-ae24b3ad data-v-6aa21345><div class="wrapper" data-v-6aa21345><div class="container" data-v-6aa21345><div class="title" data-v-6aa21345><div class="VPNavBarTitle" data-v-6aa21345 data-v-1168a8e4><a class="title" href="/" data-v-1168a8e4><!--[--><!--]--><!----><span data-v-1168a8e4>å¦çãã¡ã®æè¡ããã°</span><!--[--><!--]--></a></div></div><div class="content" data-v-6aa21345><div class="content-body" data-v-6aa21345><!--[--><!--]--><div class="VPNavBarSearch search" data-v-6aa21345><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-6aa21345 data-v-dc692963><span id="main-nav-aria-label" class="visually-hidden" data-v-dc692963> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>ãã¼ã </span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/post/" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>æç¨¿</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-6aa21345 data-v-6c893767><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-6c893767 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-6aa21345 data-v-0394ad82 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/xd-tech/linux-blog" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-bd121fe5><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-6aa21345 data-v-bb2aa2f0 data-v-cf11d7a2><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-cf11d7a2><span class="vpi-more-horizontal icon" data-v-cf11d7a2></span></button><div class="menu" data-v-cf11d7a2><div class="VPMenu" data-v-cf11d7a2 data-v-b98bc113><!----><!--[--><!--[--><!----><div class="group" data-v-bb2aa2f0><div class="item appearance" data-v-bb2aa2f0><p class="label" data-v-bb2aa2f0>Appearance</p><div class="appearance-action" data-v-bb2aa2f0><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-bb2aa2f0 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div></div></div><div class="group" data-v-bb2aa2f0><div class="item social-links" data-v-bb2aa2f0><div class="VPSocialLinks social-links-list" data-v-bb2aa2f0 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/xd-tech/linux-blog" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-bd121fe5><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-6aa21345 data-v-e5dd9c1c><span class="container" data-v-e5dd9c1c><span class="top" data-v-e5dd9c1c></span><span class="middle" data-v-e5dd9c1c></span><span class="bottom" data-v-e5dd9c1c></span></span></button></div></div></div></div><div class="divider" data-v-6aa21345><div class="divider-line" data-v-6aa21345></div></div></div><!----></header><div class="VPLocalNav empty fixed" data-v-5d98c3a5 data-v-a6f0e41e><div class="container" data-v-a6f0e41e><!----><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-a6f0e41e data-v-8a42e2b4><button data-v-8a42e2b4>Return to top</button><!----></div></div></div><!----><div class="VPContent" id="VPContent" data-v-5d98c3a5 data-v-1428d186><div class="VPDoc has-aside" data-v-1428d186 data-v-39a288b8><!--[--><!--]--><div class="container" data-v-39a288b8><div class="left-aside aside" data-v-39a288b8><div class="aside-curtain" data-v-39a288b8></div><div class="aside-container" data-v-39a288b8><div class="aside-content" data-v-39a288b8><div class="VPDocAside" data-v-39a288b8 data-v-3f215769><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-3f215769 data-v-a5bbad30><div class="content" data-v-a5bbad30><div class="outline-marker" data-v-a5bbad30></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-a5bbad30>On this page</div><ul class="VPDocOutlineItem root" data-v-a5bbad30 data-v-b933a997><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-3f215769></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-39a288b8><div class="content-container" data-v-39a288b8><!--[--><!--]--><main class="main" data-v-39a288b8><div style="position:relative;" class="vp-doc _post_age" data-v-39a288b8><div>
54<h1 id="ageã使ã£ã¦ãã¡ã¤ã«ãæå·åãã¦ã¿ã" tabindex="-1">ageã使ã£ã¦ãã¡ã¤ã«ãæå·åãã¦ã¿ã <a class="header-anchor" href="#ageã使ã£ã¦ãã¡ã¤ã«ãæå·åãã¦ã¿ã" aria-label="Permalink to "ageã使ã£ã¦ãã¡ã¤ã«ãæå·åãã¦ã¿ã"">â</a></h1><p>æè¿æ§ã ãªãã©ãããã©ã¼ã ã§ãã¡ã¤ã«ã®éåä¿¡ããã¾ãããæ®å¿µãªããã¾ã æå·åããããã¡ã¤ã«ã®éåä¿¡ã®ããã®æ¹æ³ã¨ãã¦å®çãã¦ããæ¹æ³ã¯ãªã(pgpãããªãé å¼µã£ã¦ãããä¸è¬ã«æµ¸éãã¦ããªã)ã<a href="https://ja.wikipedia.org/wiki/PPAP_(%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3)" target="_blank" rel="noreferrer">PPAP</a>ãæªã ã«ä½¿ããã¦ããã®ãç¾ç¶ã§ãã</p><p>ãã®è¨äºã§ã¯<a href="https://github.com/FiloSottile/age" target="_blank" rel="noreferrer">age</a>ã¨ãããã¼ã«ã使ã£ã¦ç°¡åã«ãã¡ã¤ã«ãæå·åãã¦éã£ãããèªåç¨ã«ä¿åãããããæ¹æ³ã«ã¤ãã¦è§£èª¬ãã¦ã¿ãããã¨æãã¾ãããã®ãã¼ã«ããããæµè¡ã£ã¦ã»ããã¨ããæ°æã¡ã§æ¸ãã¦ã¿ã¦ãã¾ããååã¯å人çãªã¡ã¢ç®çã§ãã</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>ãã®è¨äºã«æ¸ããã¦ããæ¹æ³ãç¨ãã¦æå·åããããã¡ã¤ã«ã®æ±ãã«ã¤ãã¦ã¯<strong>èªå·±è²¬ä»»</strong>ã§ãé¡ããã¾ããèå¼±ãªéµã«ããæ å ±æ¼æ´©ãããã¼ã¿ã®ç ´æã«ã¤ãã¦å½è¨äºã§ã¯è²¬ä»»ãè² ãã¾ããã</p></div><h2 id="æå·åã¨å¾©å·å" tabindex="-1">æå·åã¨å¾©å·å <a class="header-anchor" href="#æå·åã¨å¾©å·å" aria-label="Permalink to "æå·åã¨å¾©å·å"">â</a></h2><h3 id="æ¦è¦" tabindex="-1">æ¦è¦ <a class="header-anchor" href="#æ¦è¦" aria-label="Permalink to "æ¦è¦"">â</a></h3><div class="mermaid"></div><h3 id="ãã¡ã¤ã«ã®æå·å" tabindex="-1">ãã¡ã¤ã«ã®æå·å <a class="header-anchor" href="#ãã¡ã¤ã«ã®æå·å" aria-label="Permalink to "ãã¡ã¤ã«ã®æå·å"">â</a></h3><p><strong>åæ</strong></p><ul><li>éããããã¡ã¤ã«ã¯<code>hello.txt</code></li><li>æå·åããããã¡ã¤ã«ã¯<code>hello.age</code>ã«ä¿å</li><li>ãã¡ã¤ã«ãéãããç¸æã¾ãã¯èªåã®SSHå ¬ééµã次ã®ããã«recepients.txtãã¡ã¤ã«ã«æ¸ãè¾¼ã¾ãã¦ãã(ç¸æãGithubã¦ã¼ã¶ã¼ã®å ´å<code>github.com/*username*.keys</code>ã§éµãåãã)</li></ul><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM/QhUXk6LPpFd97zUow1bHkkF1CvRAjCG1iIfg5BBhd</span></span> 55<span class="line"><span>ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHznJQ8IDhutvWvChU6zk9LpKN0GOVtUbAREYUu2agpU</span></span> 56<span class="line"><span>...</span></span></code></pre></div><p>次ã®ã³ãã³ãã§æå·åã§ãã</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> age</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -R</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> recepients.txt</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -o</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.age</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.txt</span></span> 57<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># OR</span></span> 58<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cat</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.txt</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> age</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -R</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> recepients.txt</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ></span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.age</span></span></code></pre></div><p><strong>ãã¡ã¤ã«ã®å¾©å·å</strong></p><ul><li>å ¬ééµã«å¯¾å¿ããç§å¯éµã.ssh/id_ed25519ã«ä¿åãã
58ã¦ãã</li><li>復å·åããããã¡ã¤ã«ã¯<code>hello.txt</code>ã«ä¿å</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> age</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -i</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .ssh/id_ed25519</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -o</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.txt</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.age</span></span> 59<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># OR</span></span> 60<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cat</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.age</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> age</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -i</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .ssh/id_ed25519</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ></span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello.txt</span></span></code></pre></div><h2 id="ageã®ç´¹ä»" tabindex="-1">ageã®ç´¹ä» <a class="header-anchor" href="#ageã®ç´¹ä»" aria-label="Permalink to "ageã®ç´¹ä»"">â</a></h2><p><a href="https://github.com/FiloSottile/age" target="_blank" rel="noreferrer">age</a>ã®Githubã®READMEã®ä¸é¨ãæè¨³ããã¨ããæ¸ããã¦ãã¾ã</p><blockquote><p>ageã¯ã·ã³ãã«ã§ã¢ãã³ãªãã¡ã¤ã«æå·åãã¼ã«ã§ããããã©ã¼ãããã§ãããGoã®ã©ã¤ãã©ãªã§ããã å°ããæç¤ºçãªéµã使ããè¨å®çã¯ãªããUNIXã¹ã¿ã¤ã«ã®composabilityãæã¤ã</p></blockquote><p>(ããã§composabilityã¯ä»ã®ãã¼ã«ã¨çµã¿åããã¦ã³ãã³ãã©ã¤ã³ã§ä½¿ãããã¨ãæãã¨æããããè¯ã訳ãåºã¦ããªãã£ã)</p><p>ã¨ãããã¨ãããã§ãã ãã¡ã¤ã«ã®æå·åã«ã¯ä»ã«ããã¼ã«ã¨ãã¦<a href="https://gnupg.org/" target="_blank" rel="noreferrer">gpg</a>ã<a href="https://www.openssl.org/" target="_blank" rel="noreferrer">openssl</a>ãæ´»ç¨ã§ãã¾ãããå人çã«ã¯ageã®ä½¿ãæ¹ãé常ã«ããããããã®ã¯ãããããã§ããã</p><p>ã§ã¯æ¸ããã¦ãããã¨ã«ã¤ãã¦ããããè¸ã¿è¾¼ãã§ã¿ã¾ãããã</p><h3 id="ã·ã³ããã«ã¦ãã¢ã¿ãã³ãªãã¡ã¤ã«æå·åãã¼ã«" tabindex="-1">ã·ã³ãã«ã§ã¢ãã³ãªãã¡ã¤ã«æå·åãã¼ã« <a class="header-anchor" href="#ã·ã³ããã«ã¦ãã¢ã¿ãã³ãªãã¡ã¤ã«æå·åãã¼ã«" aria-label="Permalink to "ã·ã³ãã«ã§ã¢ãã³ãªãã¡ã¤ã«æå·åãã¼ã«"">â</a></h3><p>æå·åã復å·åãããããä¸è¡ã§ã§ããï¼SSHã®éµã§æå·åã§ããï¼ããã§ååã§ãããï¼</p><p>å®è£ ããã¦ããè¨èªãGoï¼ã¾ãã¯ã¹ããã¯æºæ ã®rageã®å ´åã¯Rustï¼ã§ããç¹ãã¢ãã³ã§ããç¹ã§ããã ã¡ãªã¿ã«ã¹ããã¯ã®è©³ç´°ãè¦ã¦ããç¨ãããã¦ããæå·ã¢ã«ã´ãªãºã ãæ¯è¼çã«ã¢ãã³ã§èª¤ç¨ãã«ãã仿§ã¨ãªã£ã¦ãã¾ãã</p><h3 id="ãã©ã¼ãããã¨ãã¦ã®age" tabindex="-1">ãã©ã¼ãããã¨ãã¦ã®age <a class="header-anchor" href="#ãã©ã¼ãããã¨ãã¦ã®age" aria-label="Permalink to "ãã©ã¼ãããã¨ãã¦ã®age"">â</a></h3><p>ageã¯æå·åããããã¡ã¤ã«ãã©ã¼ãããã¨ãã¦ã®å½¹å²ãæã£ã¦ãã¾ãããã¡ã¤ã«ãã©ã¼ããããæå·åæ¹å¼ã¯æ¬¡ã®ãã¼ã¸ã«ãããã¦ãã¾ãã <a href="https://age-encryption.org/v1" target="_blank" rel="noreferrer">https://age-encryption.org/v1</a></p><p>ã¹ããã¯ã«æºæ ãã¦ããã°ä»ã®ããã°ã©ã ããageäºæã®ãã¡ã¤ã«ãèªã¿æ¸ãã§ãã¾ããï¼</p><h3 id="goã®ã©ã¤ããã©ãªã¨ãã¦ã®age" tabindex="-1">Goã®ã©ã¤ãã©ãªã¨ãã¦ã®age <a class="header-anchor" href="#goã®ã©ã¤ããã©ãªã¨ãã¦ã®age" aria-label="Permalink to "Goã®ã©ã¤ãã©ãªã¨ãã¦ã®age"">â</a></h3><p>ageã®ã¹ããã¯æºæ ã®ããã°ã©ã ãæ¸ããããã¨ãããã¨ã§ã
60ãã<a href="https://pkg.go.dev/filippo.io/age" target="_blank" rel="noreferrer">Goã®ã©ã¤ãã©ãª</a>ã¨ãã¦ä½¿ããã¨ãã§ãã¾ããã<a href="https://crates.io/crates/age" target="_blank" rel="noreferrer">Rustã®ã©ã¤ãã©ãª</a>ãä½ããã¦ããããã§ãã</p><h3 id="å°ããæç¤ºçãªéµãã使ããã¦ãã" tabindex="-1">å°ããæç¤ºçãªéµã使ããã¦ãã <a class="header-anchor" href="#å°ããæç¤ºçãªéµãã使ããã¦ãã" aria-label="Permalink to "å°ããæç¤ºçãªéµã使ããã¦ãã"">â</a></h3><p>ageã§ä½¿ããéµã¯2種é¡ããã¾ãã ã©ã¡ããã®æ¹æ³ã§éµãã¢ã使ãå ¬ééµãäºåã«ç¸æã«æ¸¡ãã¦ããå¿ è¦ãããã¾ãã</p><ul><li>sshéµãã¢(ssh-rsa, ssh-ed25519)</li><li>ageã§çæããéµãã¢</li></ul><p>sshéµã®ä½¿ãåæãè¯ãã®ã§ããã使ãã±ã¼ã¹ãå¤ããã§ããã GitHubãSSHã§å©ç¨ãã¦ãã人ã¯<code>github.com/ã¢ã«ã¦ã³ãå.key</code>ã§SSHã®å ¬ééµããã¹ã¦ç¢ºèªã§ããã®ã§äºåã«ããã£ã¦ããæéãçãã¾ããã ã¡ãªã¿ã«ç§ã®å ¬ééµã¯ <a href="https://github.com/pineapplehunter.keys" target="_blank" rel="noreferrer">https://github.com/pineapplehunter.keys</a> ã§è¦ãã¾ã</p><h4 id="sshéµã®çæ" tabindex="-1">SSHéµã®çæ <a class="header-anchor" href="#sshéµã®çæ" aria-label="Permalink to "SSHéµã®çæ"">â</a></h4><p>éµã®çæã«ã¤ãã¦ã¯SSHã®å ´åã¯ã¤ãã®ã³ãã³ãã§ã§ãã¾ã(ed25519ããªã¹ã¹ã¡)</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ssh-keygen</span></span></code></pre></div><p>çæãããéµãã¢ã®<code>.pub</code>ãã¤ãã¦ããæ¹ãå ¬éãã¦æå·åãã¦ããããæ¡å¼µåã®ã¤ãã¦ããªãæ¹ã§å¾©å·åãã¾ãã</p><h4 id="ageéµã®çæ" tabindex="-1">ageéµã®çæ <a class="header-anchor" href="#ageéµã®çæ" aria-label="Permalink to "ageéµã®çæ"">â</a></h4><p>ageã®éµãã¢ã®çæã¯æ¬¡ã®ã³ãã³ãã§ã§ãã¾ã</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">$</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> age-keygen</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -o</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> keys.txt</span></span> 61<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">Public</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> key:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> age1a2s0ptca3x87xea8x9c04xm0gup5ydmqhjnnyxm2pyxqmla9mq5qgpakkx</span></span></code></pre></div><p>keys.txtãè¦ãã¨ç§å¯éµã¨å ¬ééµãæ ¼ç´ããã¦ããã¨æãã¾ãã大æåãç§å¯éµã§ãå°æåãå ¬ééµã§ãã</p><h3 id="è¨å®çã¯ãªãunixã¹ã¿ã¤ã«ã®composabilityãããã" tabindex="-1">è¨å®çã¯ãªãUNIXã¹ã¿ã¤ã«ã®composabilityããã <a class="header-anchor" href="#è¨å®çã¯ãªãunixã¹ã¿ã¤ã«ã®composabilityãããã" aria-label="Permalink to "è¨å®çã¯ãªãUNIXã¹ã¿ã¤ã«ã®composabilityããã"">â</a></h3><p>ageã¯è¨å®ãConfigãã¡ã¤ã«ãããã¾ãããå ¥åãã¡ã¤ã«ã¨éµãã¡ã¤ã«ã ãã§ããã°ã©ã ãåãããã¨ãã§ãã¾ãã ä»ã®ã³ãã³ãã¨çµã¿åããããã¨ã§æ¨æºå ¥åºåã§æå·åã復å·åãã§ãã¾ããã</p><h2 id="ageãæ´»ç¨ããä»ã®ãã¼ã«" tabindex="-1">ageãæ´»ç¨ããä»ã®ãã¼ã« <a class="header-anchor" href="#ageãæ´»ç¨ããä»ã®ãã¼ã«" aria-label="Permalink to "ageãæ´»ç¨ããä»ã®ãã¼ã«"">â</a></h2><p>ããageã«ã¤ãã¦èå³ãæ¹§ããæ¹ãããã°ããã¡ãããã§ãã¯ãã¦ã¿ã¦ãã ããã ageãç¨ããæ§ã ãªããã°ã©ã ããã©ã°ã¤ã³ãageèªä½ã®å®è£ ãªã©ãè¦ãã¾ãã</p><p><a href="https://github.com/FiloSottile/awesome-age" target="_blank" rel="noreferrer">https://github.com/FiloSottile/awesome-age</a></p><p>ä¾ãã°ç§ã使ã£ã¦ãã<a href="https://github.com/ryantm/agenix" target="_blank" rel="noreferrer">agenix</a>ã¨ãããã¼ã«ã¯NixOSã§ç§å¿ããããã¼ã¿ãæ±ããã¨ãå¯è½ã«ãã¦ãã¾ãã NixOSã§ã¯OSã«é¢ããè¨å®ãã¡ã¤ã«ããã¹ã¦å¹³æã§<code>/nix/store</code>ã«ä¿åããæ¹æ³ãæ¡ç¨ãã¦ãããNixOSã®è¨å®ãã¡ã¤ã«ãGitHubã«ã¢ãããã¼ãããéã«ã¯éè¦ãªãã¼ã¿ãå ¬éãããã¯ããã¾ããã ããã§ãagenixã¯ãã·ã³ã®rootã¢ã«ã¦ã³ãã®sshéµã使ã£ã¦ageã§æå·åãã
61ããã¡ã¤ã«ãnix,gitã§ç®¡çããæ¹æ³ãæ¡ç¨ãã¦ãã¾ãã èµ·åæã«agenixã«ããrootã®SSHéµã使ã£ã¦å¾©å·åããããã¡ã¤ã«ããã¡ã¤ã«ã·ã¹ãã ã«é ç½®ããã¾ãã ãããããã¨ã§githubã®tokenãªã©ã®æ©å¯æ å ±ãé æ ®ãªãæå·åãããç¶æ ã§GitHubã«æç¨¿ã§ãã¾ãã</p><h2 id="ageãæµè¡ãããããã«-èªåã®ææ³" tabindex="-1">ageãæµè¡ãããããã«ï¼ï¼èªåã®ææ³ï¼ <a class="header-anchor" href="#ageãæµè¡ãããããã«-èªåã®ææ³" aria-label="Permalink to "ageãæµè¡ãããããã«ï¼ï¼èªåã®ææ³ï¼"">â</a></h2><p>å人çã«ã¯ageã¯æ°ãããã¡ã¤ã«ã®æå·åã®æ¹æ³ã®ä¸ã§ãããªãç°¡åãªæ°ããã¦ãã¾ãã æå·åã®ã¢ã«ã´ãªãºã ã«ã¤ãã¦ãageå´ã§ããããæ±ºãã¦ããã£ã¦ããã®ã§é¸ã¶å¿ è¦ããªãã¨ããã®ãå©ç¨è ãããã¦ï¼èª°ãã«ä½¿ã£ã¦ãããéã«ãï¼ä¾¿å©ã§ããã</p><p>ææ³ã¨ãã¦ã¯åé¡ãªãæ°ãããã®ã§å¾ã¯UIãæ´ãã¦ãããã¨ä½¿ã£ã¦ããã人ãå¢ãã¦ãããã®ã§ã¯ãªããã¨æã£ã¦ãã¾ãã 誰ãããããã®ãã©ãããã©ã¼ã ã§ä½¿ããããUIä½ã£ã¦ãããªãããªããï¼ã¢ãã¬ã¹å¸³ï¼ãã¡ã¤ã«ããã©ãã°ã»ã¢ã³ãã»ããããã§ããã°è¯ãæ°ããããï¼</p><p>æãªã¨ãã«ä½ã£ã¦ã¿ããï¼</p></div></div></main><footer class="VPDocFooter" data-v-39a288b8 data-v-e257564d><!--[--><!--]--><div class="edit-info" data-v-e257564d><div class="edit-link" data-v-e257564d><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/xd-tech/linux-blog/edit/main/page/post/age.md" target="_blank" rel="noreferrer" data-v-e257564d><!--[--><span class="vpi-square-pen edit-link-icon" data-v-e257564d></span> Edit this page<!--]--></a></div><div class="last-updated" data-v-e257564d><p class="VPLastUpdated" data-v-e257564d data-v-e98dd255>Last updated: <time datetime="2025-07-16T05:47:33.000Z" data-v-e98dd255></time></p></div></div><!----></footer><!--[--><!--[--><!--[--><div data-v-9ec66795><div class="info-container" data-v-9ec66795><img src="/imgs/pineapplehunter.png" alt="profile picture" id="profileimg" data-v-9ec66795><div class="info-texts" data-v-9ec66795><div id="username" data-v-9ec66795>Pineapplehunter</div><div data-v-9ec66795><span id="bio" data-v-9ec66795>農工大çã®Linux好ãã®äººã§ãã</span></div><div data-v-9ec66795><a href="#" data-v-9ec66795>more info</a></div></div></div></div><!--]--><!--]--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div> 62
62<script>window.__VP_HASH_MAP__=JSON.parse("{\"index.md\":\"CoiKsOzM\",\"post_2020akeome.md\":\"fiG9MH7i\",\"post_age.md\":\"CK70qJz5\",\"post_arch-vivado.md\":\"Q7ldb1Tr\",\"post_audio_desktop.md\":\"ZmYVHapo\",\"post_beatoraja-on-linux.md\":\"IMLlG8xo\",\"post_bms-on-linux.md\":\"BOh9G9lV\",\"post_brave.md\":\"BDbIsnLk\",\"post_change-gcc.md\":\"9FF6pJSg\",\"post_clang-tidy.md\":\"BuWfroeH\",\"post_customize_distro.md\":\"C2RltTgQ\",\"post_dataset.md\":\"_Ygps7BK\",\"post_entr.md\":\"Ce_-RooW\",\"post_felica.md\":\"C5MRquCv\",\"post_foldername.md\":\"C-sJcoPR\",\"post_font-ligature.md\":\"CVsT1IJb\",\"post_gitgit.md\":\"DBiWabS4\",\"post_gpp-on-windows.md\":\"Ca-qUajb\",\"post_how-to-use-bash.md\":\"D3ufis_e\",\"post_i3_battery.md\":\"Cf8wtdyP\",\"post_i3setting.md\":\"CGXIcIAs\",\"post_i3wm-commands.md\":\"C_kZJucQ\",\"post_index.md\":\"WRKHO-Tz\",\"post_install-clang.md\":\"C4RhyXsA\",\"post_japanize-matplotlib.md\":\"CgxPvDA_\",\"post_julia-openblas-error.md\":\"BSDMSHAa\",\"post_lets-oss.md\":\"B9sJIFJr\",\"post_light.md\":\"CGEVWewk\",\"post_maas-japan.md\":\"D3OgmtVA\",\"post_make.md\":\"DlTYKEhg\",\"post_markdowndocs.md\":\"DMfGyYIB\",\"post_mozc-autostart.md\":\"BYy_EbpF\",\"post_nix-cross-compile.md\":\"BlnARFHM\",\"post_nix-develop.md\":\"Abo6cJcV\",\"post_nvm-node-install.md\":\"CNxJJJox\",\"post_office.md\":\"DdVD_L0_\",\"post_python-dev-2020.md\":\"BpVXd0jY\",\"post_sudo-setuid.md\":\"fUpUil6U\",\"post_sushida.md\":\"CQGRU-kE\",\"post_systemd-startup.md\":\"C8Mz2GRD\",\"post_taberi-.md\":\"XU_Hwa1B\",\"post_tectonic.md\":\"pGYzaCqN\",\"post_usb_format.md\":\"CXdvkVeg\",\"post_wacom2mac.md\":\"BIDSMrnT\",\"post_win-virt-nixos.md\":\"BGFJqRgc\",\"post_ybacklight.md\":\"TzTX09ji\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"å¦çãã¡ã®æè¡ããã°\",\"description\":\"å¦çãã¡ãæè¡ã«ã¤ãã¦è©±ãã¦ãã¾ã\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"ãã¼ã \",\"link\":\"/\"},{\"text\":\"æç¨¿\",\"link\":\"/post/\"}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/xd-tech/linux-blog\"}],\"search\":{\"provider\":\"local\"},\"aside\":\"left\",\"editLink\":{\"pattern\":\"https://github.com/xd-tech/linux-blog/edit/main/page/:path\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
62 63 64 </body> 65</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.