国立大学法人筑波大学において、下記のとおり製造請負契約について৻般

౉‫ޓ౏ޓᧅޓ‬๔
‫ޓ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇߦ߅޿ߡ‫ޔ‬ਅ⸥ߩߣ߅ࠅ⵾ㅧ⺧⽶ᄾ⚂ߦߟ޿ߡ৻⥸┹੎౉ᧅߦઃߒ߹ߔ‫ޕ‬
⸥
㧝‫┹ޓ‬੎౉ᧅߦઃߔࠆ੐㗄
ઙ ฬ ෸ ߮ ᢙ ㊂ ╬
ቢ ᚑ ᦼ 㒢
⚊ ౉ ႐ ᚲ
ࡂ࡯࠼࠙ࠚࠕᯏ⢻ࠍᵴ↪ߒߚ8//࠰ࡈ࠻࠙ࠚࠕߩᡷ⦟‫৻ޓ‬ᑼ
ᐔᚑᐕ᦬ᣣ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ✚ว⎇ⓥ᫟$᫟ቶ
㧞‫઀ޓ‬᭽ᦠ‫ޔ‬ᄾ⚂᧦㗄ਗ߮ߦ౉ᧅߩ⺑᣿╬ࠍߔࠆᣣᤨ෸߮႐ᚲ╬
‫ᧄޓޓ‬ઙߪ‫઀ޔ‬᭽ᦠ╬㑐ଥᦠ㘃ߩ੤ઃࠍ߽ߞߡᒰ⹥⺑᣿ࠍ⋭⇛ߔࠆ‫ޕ‬
‫઀ޓޓ‬᭽ᦠ╬㑐ଥᦠ㘃੤ઃ႐ᚲ
႐
‫⨙ޥ‬ၔ⋵ߟߊ߫Ꮢᄤ₺บ㧝ৼ⋡㧝⇟࿾ߩ㧝
ᚲ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ╙ਃࠛ࡝ࠕ#᫟ቶ
㔚⹤⇟ภ‫ޓ‬
઀ ᭽ ᦠ ੤ ઃ ᦼ 㒢
ᐔᚑᐕ᦬ᣣ
ᤨಽ
㧟‫ߦᧅ౉ޓ‬ෳടߢ߈ࠆ⠪ߩขᛒ޿
‫ޓޓ‬ᒰ⹥౉ᧅߦෳടࠍᏗᦸߔࠆ⠪ߪ‫઀ޔ‬᭽ᦠߦᓥ޿‫ޔ‬ᒰ⹥⺧⽶ࠍᦼ㒢߹ߢߦቢᚑ಴᧪ࠆߎߣࠍ⸽᣿ߢ߈ࠆᦠ㘃
‫ࠍޓ‬ឭ಴ߔࠆᔅⷐ߇޽ࠆ‫ᧄޕ‬ቇ߇ክᩏߒ‫ޔ‬ቢᚑߢ߈ࠆ⠪ߣ⹺߼ߚ႐วߩߺෳടߔࠆߎߣ߇ߢ߈ࠆ‫ޕ‬
‫⸽ޓޓ‬᣿ߔࠆᦠ㘃╬ߩឭ಴వ෸߮ឭ಴ᦼ㒢
਄⸥઀᭽ᦠ╬㑐ଥᦠ㘃੤ઃ႐ᚲߣหߓ
ឭ
಴
వ
ᐔᚑᐕ᦬ᣣ
ᤨಽ
ឭ ಴ ᦼ 㒢
㧠‫ߩᧅ౉ޓ‬ᣣᤨ෸߮႐ᚲ
ᣣ
ᤨ
႐
ᚲ
ᐔᚑᐕ᦬ᣣ
ᤨಽ
‫⨙ޥ‬ၔ⋵ߟߊ߫Ꮢᄤ₺บ㧝ৼ⋡㧝⇟࿾ߩ㧝
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ╙ਃࠛ࡝ࠕ#᫟ቶ
㧡‫ᧅ౉ޓ‬ᣇᴺ
‫ᧅ⪭ޓޓ‬᳿ቯߦᒰߚߞߡߪ‫⸥ߦᦠᧅ౉ޔ‬タߐࠇߚ㊄㗵ߦᒰ⹥㊄㗵ߩ㧡ࡄ࡯࠮ࡦ࠻ߦ⋧ᒰߔࠆ㗵ࠍട▚ߒߚ㊄㗵
‫ޓ‬㧔ᒰ⹥㊄㗵ߦ㧝౞ᧂḩߩ┵ᢙ߇޽ࠆߣ߈ߪ‫┵ߩߘޔ‬ᢙ㊄㗵ࠍಾࠅᝥߡࠆ߽ߩߣߔࠆ‫ޕ‬㧕ࠍ߽ߞߡ⪭ᧅଔᩰߣ
‫ᧅ౉ޔߢߩࠆߔޓ‬⠪ߪ‫ޔ‬ᶖ⾌⒢෸߮࿾ᣇᶖ⾌⒢ߦដ߆ࠆ⺖⒢੐ᬺ⠪ߢ޽ࠆ߆఺⒢੐ᬺ⠪ߢ޽ࠆ߆ࠍ໧ࠊߕ‫⷗ޔ‬
‫ޓ‬Ⓧ߽ߞߚᄾ⚂㊄㗵ߩಽߩߦ⋧ᒰߔࠆ㊄㗵ࠍ౉ᧅᦠߦ⸥タߔࠆߎߣ‫ޕ‬
㧢‫┹ޓ‬੎ߦෳടߔࠆ⠪ߦᔅⷐߥ⾗ᩰ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ⽷ോⷙೣᣉⴕⷙ⒟╙᧦ߩⷙቯߦ⹥ᒰߒߥ޿⠪ߢ޽ࠆߎߣ‫ᧂޔ߅ߥޕ‬ᚑᐕ⠪‫ⵍޔ‬
଻૒ੱ෶ߪⵍ⵬ഥੱߢ޽ߞߡ‫ޔ‬ᄾ⚂✦⚿ߩߚ߼ߦᔅⷐߥหᗧࠍᓧߡ޿ࠆ⠪ߪ‫ޔ‬ห᧦ਛ‫․ޔ‬೎ߩℂ↱߇޽ࠆ
႐วߦ⹥ᒰߔࠆ‫ޕ‬
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ⽷ോⷙೣᣉⴕⷙ⒟╙᧦ߩⷙቯߦ⹥ᒰߒߥ޿⠪ߢ޽ࠆߎߣ‫ޕ‬
࿖ߩ┹੎ෳട⾗ᩰ㧔ో⋭ᐡ⛔৻⾗ᩰ㧕෶ߪ࿖┙ᄢቇᴺੱ╳ᵄᄢቇߩ┹੎ෳട⾗ᩰߩ޿ߕࠇ߆ߦ߅޿ߡᐔ
ᚑᐕᐲߦ㑐᧲࡮↲ା⿧࿾ၞߩ‫‛ޟ‬ຠߩ⵾ㅧ‫ޟߩޠ‬#㨭‫ޟޔ‬$㨭‫ޟޔ‬%‫ޠ‬෶ߪ‫ߦ⚖╬ޠ&ޟ‬ᩰઃߌߐࠇߡ޿ࠆ⠪
ߢ޽ࠆߎߣ‫ޕ‬
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ⽷ോⷙೣᣉⴕⷙ⒟╙᧦ߩⷙቯߦၮߠ߈‫ޔ‬ᄾ⚂ᜂᒰᓎ߇ቯ߼ࠆ⾗ᩰࠍ᦭ߔࠆ⠪ߢ
޽ࠆߎߣ‫ޕ‬
ᄾ⚂ᜂᒰᓎ߆ࠄขᒁ஗ᱛߩភ⟎ࠍฃߌߡ޿ࠆᦼ㑆ਛߩ⠪ߢߥ޿ߎߣ㨫
㧣‫⸽଻ᧅ౉ޓ‬㊄෸߮ᄾ⚂଻⸽㊄
‫఺ޓޓ‬㒰ߔࠆ‫ޕ‬
㧤‫ߩᧅ౉ޓ‬ήല
‫౏ᧄޓޓ‬๔ߦ␜ߒߚ┹੎ෳടߦᔅⷐߥ⾗ᩰߩߥ޿⠪ߩឭ಴ߒߚ౉ᧅᦠ‫ઁߩߘޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇᄾ⚂੐ോ
‫ޓ‬ขᛒ⚦ೣ╙᧦╙㗄ฦภߦឝߍࠆ౉ᧅᦠߪήലߣߔࠆ‫ޕ‬
㧥‫ޓ‬ᄾ⚂ᦠߩ૞ᚑ
‫ޓޓ‬ᄾ⚂✦⚿ߦᒰߚߞߡߪ‫ޔ‬ᄾ⚂ᦠࠍ૞ᚑߔࠆ߽ߩߣߔࠆ‫ޕ‬
‫ᧅ⪭ޓ‬⠪ߩ᳿ቯᣇᴺ
‫౏ᧄޓޓ‬๔ߦ␜ߒߚ‛ຠࠍ⵾ㅧߢ߈ࠆߣᄾ⚂ᜂᒰᓎ߇್ᢿߒߚ౉ᧅ⠪ߢ޽ߞߡ‫ޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇ⽷ോⷙ
‫ޓ‬ೣᣉⴕⷙ⒟╙᧦ߩⷙቯߦၮߠ޿ߡ૞ᚑߐࠇߚ੍ቯଔᩰߩ▸࿐ౝߢᦨૐଔᩰࠍ߽ߞߡ᦭ലߥ౉ᧅࠍⴕߞߚ౉
‫ᧅޓ‬⠪ࠍ⪭ᧅ⠪ߣߔࠆ‫ޕ‬
એ਄౏๔ߔࠆ‫ޕ‬
‫ޓ‬
ᐔᚑᐕ᦬ᣣ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ
ᄾ⚂ᜂᒰᓎ
⽷ോᜂᒰ೽ቇ㐳᫪ᧄ‫ޓ‬ᶈ৻
઀䇭᭽䇭ᦠ
䋱䋮 ઙ ฬ ෸ 䈶 ᢙ ㊂
䊊䊷䊄䉡䉢䉝ᯏ⢻䉕ᵴ↪䈚䈢㪭㪤㪤䉸䊐䊃䉡䉢䉝䈱ᡷ⦟䇭৻ᑼ
䋲䋮 ቢ
ᚑ
ᦼ
㒢
ᐔᚑ㪉㪋ᐕ㪉᦬㪉㪐ᣣ
䋳䋮 ⚊
౉
႐
ᚲ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ㩷✚ว⎇ⓥ᫟㪙᫟㪈㪈㪉㪏ቶ
䋴䋮 ᬌ ᩏ ෸ 䈶 ᒁ ᷰ 䈚
䇭ᧄቇ䈮䈍䈇䈩䇮⺧⽶⠪┙ળ䈱䈉䈋䇮ᒰ⹥ᄾ⚂䈱ቢੌ䉕⏕⹺䈜䉎䈢䉄䈱
ᬌᩏ䉕ⴕ䈇䇮วᩰ䈫⹺䉄䈢ᓟ䇮ᒁᷰ䈚䉕ฃ䈔䉎䉅䈱䈫䈜䉎䇯
䋵䋮 ℩
଻
䇭䈖䈱⵾ㅧ䈮䈧䈇䈩䇮⺧⽶⠪䈏ᒁᷰ䈚䉕ቢੌ䈚䈢䈱䈤䇮䋱ᐕએౝ䈮⊒ᵈ⠪
䈏℩∎䉕⊒⷗䈚䈢䈫䈐䈲䇮䈢䈣䈤䈮ୃᱜ䈜䉎䉅䈱䈫䈚䇮䈖䈱ୃᱜ䈮ⷐ䈚䈢⾌
↪䈲䈜䈼䈩⺧⽶⠪䈱⽶ᜂ䈫䈜䉎䇯
ᛄ
䇭㩷ᬌᩏ⚳ੌᓟㆡᴺ䈭⺧᳞ᦠ䉕ฃℂ䈚䈢ᣣ䈎䉌⿠▚䈚䈩䋴䋰ᣣએౝ䈮ᡰᛄ
䈉䉅䈱䈫䈜䉎䇯
∎
ᜂ
䋶䋮 ᡰ
䋷䋮 ᄾ⚂䈮ᔅⷐ䈭⚦⋡
䇭㩷ᧄᄾ⚂䈮ᔅⷐ䈭⚦⋡䈲䇮࿖┙ᄢቇᴺੱ╳ᵄᄢቇᄾ⚂੐ോขᛒ⚦ೣ䈮
䉋䉎䉅䈱䈫䈜䉎䇯
䋸䋮 䈠
㩷㩷ᧄઙ䈲䋬ᧄ઀᭽ᦠ෸䈶䇸䊊䊷䊄䉡䉢䉝ᯏ⢻䉕ᵴ↪䈚䈢㪭㪤㪤䉸䊐䊃䉡䉢䉝䈱
ᡷ⦟઀᭽ᦠ䇹䈮䉋䈦䈩ⴕ䈉䉅䈱䈫䈚䋬䈖䉏䉌䈮⇼⟵䈏↢䈛䈢ᤨ䈲䋬ᧄቇᜂᒰ
⡯ຬ䈱ᜰ␜䈮䉋䉎䈖䈫䇯
䈱
ઁ
ࡂ࡯࠼࠙ࠚࠕᯏ⢻ࠍᵴ↪ߒߚ
VMM࠰ࡈ࠻࠙ࠚࠕߩᡷ⦟
઀᭽ᦠ
ᐔᚑ 23 ᐕ 1㧝᦬
╳ᵄᄢቇ
1 ⺞㆐ߩ⢛᥊෸߮⋡⊛
BitVisorߪ‫╳ޔ‬ᵄᄢቇ߇ਥ૕⊛ߦ㐿⊒ࠍㅴ߼ߡ޿ࠆࠝ࡯ࡊࡦ࠰࡯ࠬ࡮઒ᗐᯏ᪾
ࡕ࠾࠲㧔એਅ‫ޟޔ‬VMM‫ޠ‬㧕࠰ࡈ࠻࠙ࠚࠕߢ޽ࠆ‫ޕ‬BitVisorߪ‫․ޔ‬ቯߩOSߦଐሽ
ߒߥ޿VMM࡟ࡌ࡞ߢ࠮ࠠࡘ࡝࠹ࠖᯏ⢻ࠍታ⃻ߔࠆߎߣࠍ⋡⊛ߣߒߡ߅ࠅ‫ޔ‬ICࠞ
࡯࠼ߦࠃࠆ⹺⸽࡮ID▤ℂᯏ⢻‫߿ࠢࠬࠖ࠺࠼࡯ࡂޔ‬USBࡔࡕ࡝╬ߦኻߔࠆࠬ࠻࡟࡯
ࠫᥧภൻᯏ⢻‫ࠢ࡯ࡢ࠻࠶ࡀޔ‬ㅢାࠍᒝ೙⊛ߦᥧภൻߔࠆVPNᯏ⢻ࠍឭଏߔࠆ‫ޕ‬
BitVisorߩታⵝߪ‫ࠖ࠹࡝ࡘࠠ࠮ޔ‬ᯏ⢻ࠍታ⃻ߔࠆߚ߼ߦᦨૐ㒢ᔅⷐߥI/Oߛߌࠍ
⋙ⷞ࡮઒ᗐൻߒߡ‫ࠇߘޔ‬એᄖߩ࠺ࡃࠗࠬߩI/Oߪࠥࠬ࠻OS߆ࠄㅘㆊ⊛ߣߔࠆḰࡄ
ࠬࠬ࡞࡯ဳࠕ࡯ࠠ࠹ࠢ࠴ࡖࠍណ↪ߒߡ޿ࠆ‫ޕ‬CPUߩ઒ᗐൻߦߟ޿ߡߪ‫࠶࠮ࡠࡊޔ‬
ࠨߩ઒ᗐൻᡰេᯏ⢻ࠍ↪޿ࠆߎߣߢ‫ޔ‬ታⵝࠍන⚐ൻߒߟߟ‫ޔ‬ᕈ⢻ૐਅࠍዊߐߊᛥ
߃ߡ޿ࠆ‫ߪߡߞࠃߦࠢ࡯ࡑ࠴ࡦࡌޔߒ߆ߒޕ‬ᄢ߈ߥᕈ⢻ૐਅ߇ߺࠄࠇࠆ႐ว߇޽
ࠆ‫ߩࠨ࠶࠮ࡠࡊޕ‬઒ᗐൻᡰេᯏ⢻ߪᐕ‫ޘ‬ᡷ⦟ߐࠇߡ߈ߡ߅ࠅ‫ᦨޔ‬ᣂߩࡂ࡯࠼࠙ࠚ
ࠕ߇ᜬߟᯏ⢻ߦኻᔕߔࠆߎߣߢᕈ⢻ࠍᡷༀߢ߈ࠆ⷗ㄟߺ߇޽ࠆ‫ޕ‬
߹ߚ‫ޔ‬BitVisorߩᥧภൻᯏ⢻ߪ‫ޔ‬OpenSSL࡜ࠗࡉ࡜࡝ࠍᡷᄌߒߚ߽ߩࠍ⚵ߺㄟ
ࠎߢ૶↪ߒߡ޿ࠆ‫ޔߒ߆ߒޕ‬቟ోߥᥧภㅢାߦᔅⷐߥᡆૃੂᢙߩࠪ࡯࠼ߪ‫⿠ޔ‬േ
ᤨߦ⹺⸽↪ࡊࡠࠣ࡜ࡓ㧔ࡒ࠾OS㧕߆ࠄᷰߐࠇࠆ࠺࡯࠲ࠍ૶↪ߒߡ޿ࠆߚ߼‫ࠛޔ‬
ࡦ࠻ࡠࡇ࡯߇චಽߢߪߥ޿น⢻ᕈ߇޽ࠆ‫ޕ‬TPMࡂ࡯࠼࠙ࠚࠕߩᡰេߦࠃࠅ‫ࡦࠛޔ‬
࠻ࡠࡇ࡯ࠍჇᄢߐߖࠄࠇࠆ⷗ㄟߺ߇޽ࠆ‫ޕ‬
਄ㅀߩࠃ߁ߥ⢛᥊ߦၮߠ߈‫⺞ᧄޔ‬㆐᩺ઙߪ‫ߡ޿↪ࠍࠕࠚ࠙࠼࡯ࡂޔ‬VMMࠍᡷ
⦟ߔࠆ߽ߩߢ޽ࠆ‫ޕ‬
2 ⚊౉ຠ
‫ޟ‬ᡷ⦟ VMM࠰ࡈ࠻࠙ࠚࠕ‫৻ޠ‬ᑼࠍ‫ޔ‬ᓟㅀ‫ᦼ౉⚊ޟ‬㒢߅ࠃ߮⚊౉႐ᚲ‫ߦޠ‬ቯ
߼ࠆᦼᣣ߹ߢߦ⚊౉ߔࠆߎߣ‫ޕ‬
‫ޟ‬ᡷ⦟ VMM࠰ࡈ࠻࠙ࠚࠕ‫৻ޠ‬ᑼߩ᭴ᚑౝ⸶߅ࠃ߮ᢙ㊂ߪ‫ޔ‬એਅߩߣ߅ࠅߢ
޽ࠆ‫౉⚊ᧄޕ‬ຠߪ‫⊒ޔ‬ᵈ⠪߇ࠞࠬ࠲ࡑࠗ࠭ߒߡ೑↪ߔࠆߚ߼‫ోߩ࠼࡯ࠦࠬ࡯࠰ޔ‬
ౝኈ߇ℂ⸃ߢ߈ࠆࠃ߁ߦ‫ޔ‬น⺒ᕈߩ⦟޿࠰࡯ࠬࠦ࡯࠼ߣචಽߥᖱႎࠍ⸥タߒߚ࠼
ࠠࡘࡔࡦ࠻ࠍឭଏߔࠆߎߣ‫ޕ‬
㧨᭴ᚑౝ⸶㧪
1. ᡷ⦟ VMM࠰ࡈ࠻࠙ࠚࠕߩ࠰࡯ࠬࠦ࡯࠼ ৻ᑼ
2. ᡷ⦟ VMM࠰ࡈ࠻࠙ࠚࠕߩᯏ⢻⹜㛎↪ࡊࡠࠣ࡜ࡓߩ࠰࡯ࠬࠦ࡯࠼ ৻ᑼ
3. ታⴕน⢻ߥࠦࡦࡄࠗ࡞ᷣߺࡊࡠࠣ࡜ࡓ
4. ታⵝ઀᭽ᦠ
5. ᯏ⢻⹜㛎઀᭽ᦠ㧛ታᣉႎ๔ᦠ
6. ࡊࡠࠣ࡜ࡓߩࡆ࡞࠼ࡑ࠾ࡘࠕ࡞
7. ࡊࡠࠣ࡜ࡓߩታⴕᣇᴺࡑ࠾ࡘࠕ࡞
8. ࡊࡠࠣ࡜ࡓߩᯏ⢻⹜㛎ታⴕࡑ࠾ࡘࠕ࡞
9. ߘߩઁߩᧄ⺞㆐᩺ઙߢ૞ᚑߒߚᦠ㘃
㧨ᢙ㊂㧪
A) ਄⸥2ޯߩ㔚ሶ࠺࡯࠲ࠍᩰ⚊ߒߚࡔ࠺ࠖࠕ 1ㇱ⚊౉
B) ਄⸥2ޯࠍࡃࠗࡦ࠳ߦ෼߼ߚ߽ߩ 1ㇱ⚊౉
3 ⚊౉ᦼ㒢߅ࠃ߮⚊౉႐ᚲ
⚊౉႐ᚲ㧦࿖┙ᄢቇᴺੱ╳ᵄᄢቇ ✚ว⎇ⓥ᫟B᫟1128ቶ
⚊౉ᦼ㒢㧦ᐔᚑ24ᐕ2᦬29ᣣ
4 㐿⊒᭎ⷐ
ᧄ⺞㆐᩺ઙߩ㐿⊒▸࿐ࠍ฽߻ࠪࠬ࠹ࡓߩో૕࿑ࠍ࿑ 1ߦ␜ߔ‫ᧄ ޕ‬᩺ઙߢߪ‫ޔ‬
ࡂ࡯࠼࠙ࠚࠕᯏ⢻ࠍ↪޿ߡBitVisorߩᡷ⦟ࠍⴕ߁‫ޕ‬
BitVisorߪ‫ޔ‬4ߟߩᯏ⢻ࡉࡠ࠶ࠢߦಽߌࠄࠇࠆ‫⺞ᧄޔߜ߁ߩߘ ޕ‬㆐᩺ઙߩ㐿⊒
▸࿐ࠍ฽߻ᯏ⢻ࡉࡠ࠶ࠢߦߟ޿ߡ‫ޔ‬ᰴ▵ߦߡቯ⟵ߔࠆ‫ޕ‬
Figure 1: ࠪࠬ࠹ࡓో૕࿑
4.1 ᯏ⢻᭴ᚑ
ᡷ⦟ VMM࠰ࡈ࠻࠙ࠚࠕߪ‫ޔ‬એਅߩᯏ⢻߆ࠄ᭴ᚑߐࠇࠆ‫ޕ‬
1. CPU઒ᗐൻ
2. ᥧภᯏ⢻
3. ೋᦼൻᯏ⢻
ߎࠇࠄߦߟ޿ߡ‫ޔ‬એਅߢㅀߴࠆ‫ޕ‬
4.1.1 CPU઒ᗐൻ
VMMߦߪ‫ޔ‬઒ᗐࡑࠪࡦࠍታ⃻ߔࠆߚ߼ߦ᭽‫ߥޘ‬઒ᗐൻᯏ⢻߇ታⵝߐࠇߡ޿ࠆ‫ޕ‬
ߘߩ઒ᗐൻᯏ⢻ߩ߭ߣߟ߇‫ޔ‬CPU઒ᗐൻߢ޽ࠆ‫ᧄ ޕ‬ᯏ⢻ߪ‫ߦࠄߐޔ‬એਅߩ4ߟߩ
ಣℂߦಽ⸃ߢ߈ࠆ‫ޕ‬
1. ࠥࠬ࠻OS࡮VMM㑆ࠦࡦ࠹ࠠࠬ࠻ಾࠅᦧ߃
CPUߩ઒ᗐൻᡰេᯏ⢻ࠍ↪޿ߡ‫࠻ࠬࠥޔ‬OSߣVMMߩ㑆ߢߩࠦࡦ࠹ࠠࠬ࠻
ಾࠅᦧ߃ࠍታ⃻ߔࠆ‫ޕ‬
2. ࠪࡖ࠼࠙ࡍ࡯ࠫ࠹࡯ࡉ࡞
ࠥࠬ࠻OS߇૶↪ߔࠆࡍ࡯ࠫ࠹࡯ࡉ࡞ࠍ߽ߣߦ‫ޔ‬CPU߇૶↪ߔࠆࡍ࡯ࠫ࠹࡯
ࡉ࡞ࠍ૞ᚑߔࠆߎߣߢ‫࠻ࠬࠥޔ‬OSߩ઒ᗐࠕ࠼࡟ࠬⓨ㑆ࠍታ⃻ߔࠆ‫ޕ‬
3. CPUࠗࡦ࠲ࡊ࡝࠲
CPUߩ઒ᗐൻᡰេᯏ⢻ߦࠃߞߡಣℂߢ߈ߥ޿๮઎ࠍ‫ޔ‬1๮઎ߕߟ⸃㉼࡮ታⴕ
ߔࠆ‫ޕ‬
4. ߘߩઁ
ᄖㇱഀࠅㄟߺߩಣℂ߿‫ޔ‬I/Oࠍࡈ࠶ࠢߒߡ࠺ࡃࠗࠬ࠼࡜ࠗࡃࠍ๭߮಴ߔಣℂ
ߥߤ߇޽ࠆ‫ޕ‬
4.1.2
ᥧภᯏ⢻
ᥧภᯏ⢻ߪ‫ࠫ࡯࡟࠻ࠬޔ‬ᥧภൻࡕࠫࡘ࡯࡞‫ޔ‬ID▤ℂࡕࠫࡘ࡯࡞‫ޔ߮ࠃ߅ޔ‬VPN
ࡕࠫࡘ࡯࡞ߦࠃߞߡ૶↪ߐࠇࠆ‫ޔ‬ᥧภൻṶ▚߿ੂᢙ↢ᚑߥߤࠍⴕ߁ᯏ⢻ߢ޽ࠆ‫ޕ‬
ᧄᯏ⢻ߪ‫ߦࠄߐޔ‬એਅߩ2ߟߩಣℂߦಽ⸃ߢ߈ࠆ‫ޕ‬
1. OpenSSL
SSLࡊࡠ࠻ࠦ࡞࡮TLSࡊࡠ࠻ࠦ࡞ߩታⵝߢ޽ࠆ‫ ޕ‬OpenSSL Projectߦࠃߞߡ
㐿⊒ߐࠇߚOpenSSLࠍࡌ࡯ࠬߦ‫ޔ‬BitVisorߦ࡝ࡦࠢߢ߈ࠆࠃ߁ᡷᄌߐࠇߡ޿
ࠆ‫ޕ‬
2. ੂᢙ↢ᚑེ
OpenSSL߇ᜬߟᡆૃੂᢙ↢ᚑᯏ⢻ࠍ૶↪ߔࠆ߇‫ޔ‬ᡆૃੂᢙߩࠪ࡯࠼ߣߒߡ
චಽߥࠛࡦ࠻ࡠࡇ࡯ࠍᜬߟ࠺࡯࠲ࠍ૶↪ߔࠆ‫ޕ‬
4.1.3
ೋᦼൻᯏ⢻
ೋᦼൻᯏ⢻ߪ‫ޔ‬BitVisorౝߩฦࡕࠫࡘ࡯࡞ߩೋᦼൻࠍⴕ߁ᯏ⢻ߢ޽ࠆ‫ޕ‬
4.2 ᯏ⢻ⷐઙ
ᧄ⺞㆐᩺ઙߢᡷ⦟ߔࠆBitVisorߪ‫ޔ‬એਅߩࠃ߁ߥᯏ⢻߅ࠃ߮․ᓽࠍ஻߃ߡ޿ࠆߎ
ߣ߇᳞߼ࠄࠇࠆ‫ޕ‬
4.2.1
ࠥࠬ࠻OS࡮VMM㑆ࠦࡦ࠹ࠠࠬ࠻ಾࠅᦧ߃
1. Intelࡊࡠ࠮࠶ࠨߩExtended Page Tables㧔EPT㧕‫ޔ߮ࠃ߅ޔ‬AMDࡊࡠ࠮࠶ࠨ
ߩNested Page Tables㧔NPT㧕ߩ૶↪
EPT/NPT߇៞タߐࠇߡ޿ࠆࡊࡠ࠮࠶ࠨߢߪ‫ޔ‬EPT/NPTࠍ૶↪ߔࠆߎߣߢ‫ޔ‬
ࠪࡖ࠼࠙ࡍ࡯ࠫ࠹࡯ࡉ࡞ߩࠝ࡯ࡃࡋ࠶࠼ࠍㆱߌࠆ‫ ޕ‬EPT/NPTࠍ૶↪ߔࠆߣ‫ޔ‬
ࠥࠬ࠻OSߩࡍ࡯ࠫࡈࠜ࡯࡞࠻଀ᄖߦࠃࠆVMM߳ߩࠦࡦ࠹ࠠࠬ࠻ࠬࠗ࠶࠴
߇ਇⷐߦߥࠆ‫ ޕ‬EPT/NPT߇៞タߐࠇߡ޿ߥ޿ࡊࡠ࠮࠶ࠨߢߪ‫ޔ‬ᓥ᧪ߤ߅ࠅ
ࠪࡖ࠼࠙ࡍ࡯ࠫ࠹࡯ࡉ࡞ࠍ૶↪ߔࠆ‫࠻ࠬࠥ ޕ‬OS߇ࡍ࡯ࠫࡦࠣࠍ᦭ലߦߒ
ߡ޿ߥ޿㑆ߪ‫ޔ‬EPT/NPTࠍ૶↪ߒߥߊߡ߽ࠃ޿‫ޕ‬
2. Intelࡊࡠ࠮࠶ࠨߩUnrestricted guestߩ૶↪
Unrestricted guest߇៞タߐࠇߡ޿ࠆࡊࡠ࠮࠶ࠨߢߪ‫ޔ‬real-address modeߩࠛࡒ
ࡘ ࡟ ࡯ ࠪ ࡚ ࡦ ߩ ߚ ߼ ߦ ઒ ᗐ 8086 ࡕ ࡯ ࠼ ࠍ ૶ ↪ ߔ ࠆ ߎ ߣ ࠍ ߿ ߼ ࠆ ‫ޕ‬
Unrestricted guest߇៞タߐࠇߡ޿ߥ޿ࡊࡠ࠮࠶ࠨߢߪ‫ޔ‬ᓥ᧪ߤ߅ࠅ઒ᗐ8086
ࡕ࡯࠼ࠍ↪޿ߡreal-address modeࠍࠛࡒࡘ࡟࡯࠻ߔࠆ‫ޕ‬
3. Intelࡊࡠ࠮࠶ࠨߦ߅ߌࠆ଀ᄖಣℂߩ㜞ㅦൻ
Intelࡊࡠ࠮࠶ࠨߦ߅޿ߡ‫࠻ࠬࠥޔ‬OSߢ⊒↢ߔࠆߔߴߡߩ଀ᄖࠍᏱߦVMM
ߢಣℂߔࠆߎߣࠍ߿߼ߡ‫ޔ‬ᔅⷐߥ଀ᄖߩߺࠍಣℂߔࠆߎߣߢ㜞ㅦൻࠍⴕ߁‫ޕ‬
4. AMDࡊࡠ࠮࠶ࠨߦ߅ߌࠆࡑ࡞࠴ࠦࠕኻᔕ
AMDࡊࡠ࠮࠶ࠨߦ߅޿ߡ‫࠻ࠬࠥޔ‬OS߇ࡑ࡞࠴ࠦࠕࠍ૶↪ߢ߈ࠆࠃ߁ߦߔࠆ‫ޕ‬
ࠥࠬ࠻OSߦࠃࠆLocal APICߩࠕࠢ࠮ࠬࠍࡈ࠶ࠢߒ‫ޔ‬Startup IPIࠍಣℂߔࠆᯏ
⢻߇ᔅⷐߦߥࠆ‫ޕ‬
4.2.2 CPUࠗࡦ࠲ࡊ࡝࠲
1. CPUࠗࡦ࠲ࡊ࡝࠲ߩ64ࡆ࠶࠻ኻᔕ
CPUࠗࡦ࠲ࡊ࡝࠲߇‫ޔ‬64ࡆ࠶࠻ߩ࡟ࠫࠬ࠲ࠍᛒ߁๮઎ߦኻᔕߔࠆߎߣߢ‫ޔ‬
64ࡆ࠶࠻ߩࠥࠬ࠻OS਄ߢVPNᯏ⢻ߥߤ߇േ૞ߔࠆࠃ߁ߦߔࠆ‫ޕ‬
4.2.3
ੂᢙ↢ᚑེ
1. TPMߩੂᢙ↢ᚑེߩ૶↪
TPM߇៞タߐࠇߡ޿ࠆࠦࡦࡇࡘ࡯࠲ߢߪ‫ޔ‬ᓥ᧪ߩ࠺࡯࠲ߦട߃ߡ‫ޔ‬TPMߩ
ੂᢙ↢ᚑེࠍ↪޿ߡᡆૃੂᢙߩࠪ࡯࠼ࠍ↢ᚑߔࠆࠃ߁ߦߔࠆ‫ޕ‬TPM߇៞タ
ߐࠇߡ޿ߥ޿ࠦࡦࡇࡘ࡯࠲ߢߪ‫ޔ‬ᓥ᧪ߤ߅ࠅࡒ࠾OS߆ࠄᷰߐࠇࠆ࠺࡯࠲ࠍ
૶↪ߔࠆ‫ޕ‬
4.2.4
ฦࡕࠫࡘ࡯࡞ೋᦼൻ
1. ࡑ࡞࠴ࠦࠕᵴ↪
CPUߩࡑ࡞࠴ࠦࠕࠍᵴ↪ߒߡ‫ޔ‬ฦࡕࠫࡘ࡯࡞ߩೋᦼൻಣℂࠍਗ೉ൻߔࠆߎ
ߣߦࠃߞߡ‫ࠕࠦ࠴࡞ࡑޔ‬CPU߇៞タߐࠇߡ޿ࠆࠦࡦࡇࡘ࡯࠲਄ߢೋᦼൻߦ
߆߆ࠆᤨ㑆ࠍ⍴❗ߔࠆ‫ޕ‬
5 㐿⊒ⷐઙ
1. ᧄ࠰ࡈ࠻࠙ࠚࠕߪC⸒⺆ߦࠃߞߡ⸥ㅀߔࠆߎߣ‫ޕ‬
2. ᧄ࠰ࡈ࠻࠙ࠚࠕߪGNU Cࠦࡦࡄࠗ࡜㧔gcc㧕ߦࠃߞߡࠦࡦࡄࠗ࡞ߢ߈ࠆࠃ߁
ߦߔࠆߎߣ‫ޕ‬
3. ᧄ࠰ࡈ࠻࠙ࠚࠕߪ‫␠࠻ࡈ࠰ࡠࠢࠗࡑޔ‬Windows XP/Vista/7߅ࠃ߮Linux㧔ࡃ
࡯࡚ࠫࡦ2.6.32એ㒠㧕ߩࠥࠬ࠻OSߣ⚵ߺวࠊߖߡ‫ޔ‬ᱜߒߊേ૞ߔࠆߎߣ‫ޕ‬
ዏ‫ޔ‬㐿⊒ߦ㓙ߒߡߪ‫࠻ࠬࠥߩઁޔ‬OSߩേ૞߽⠨ᘦߦ౉ࠇߡ㐿⊒ࠍⴕ߁ߎߣ‫ޕ‬
4. ᧄ࠰ࡈ࠻࠙ࠚࠕߩ㐿⊒߅ࠃ߮ᯏ⢻⹜㛎ߦ↪޿ࠆࡂ࡯࠼࠙ࠚࠕߪ‫ޔ‬એਅߩ઀
᭽ࠍḩߚߔ߽ߩߣߔࠆߎߣ‫ޕ‬
(a) એਅߩᯏ⢻ࠍᜬߟIntelࡊࡠ࠮࠶ࠨ
• Intel 64
• Intel VT
• Extended Page Tables㧔EPT㧕
• Unrestricted guest
(b)એਅߩᯏ⢻ࠍᜬߟAMDࡊࡠ࠮࠶ࠨ
• AMD64
• AMD-V
• Nested Page Tables㧔NPT㧕
• ࡑ࡞࠴ࠦࠕ
(c) TPM៞タ
5. ᧄ࠰ࡈ࠻࠙ࠚࠕߪ‫ޔ‬਄⸥ࡂ࡯࠼࠙ࠚࠕ઀᭽ࠍḩߚߔ64ࡆ࠶࠻ࠕ࡯ࠠ࠹ࠢ࠴
ࡖ਄ߢേ૞ߔࠆߎߣߣߒ‫⹥ޔ‬ᒰࠕ࡯ࠠ࠹ࠢ࠴ࡖߦ߅޿ߡേ૞⏕⹺ࠍⴕ߁ߎ
ߣ‫ޕ‬
6. ᧄ࠰ࡈ࠻࠙ࠚࠕߪ‫ޔ‬એਅߩOS࠰ࡈ࠻࠙ࠚࠕ߇ࠥࠬ࠻OSߣߒߡേ૞ߔࠆߎߣ
ߣߒ‫⹥ޔ‬ᒰOS࠰ࡈ࠻࠙ࠚࠕࠍ↪޿ߡേ૞⏕⹺ࠍⴕ߁ߎߣ‫ޕ‬
(a) Microsoft Windows 7
(b)Linux 2.6.32એ㒠ߩࡃ࡯࡚ࠫࡦ
7. ᧄ࠰ࡈ࠻࠙ࠚࠕߪBitVisor߳ߩ⚵ߺㄟߺࠍ⋡⊛ߣߔࠆߚ߼‫ޔ‬GNU C࡜ࠗࡉ࡜
࡝㧔glibc㧕ࠍߪߓ߼ߣߔࠆᄖㇱ࡜ࠗࡉ࡜࡝ࠍ৻ಾ૶↪ߖߕ㐿⊒ߔࠆߎߣ‫ޕ‬
ߚߛߒ‫⊒ޔ‬ᵈ⠪߇ឭ␜ߔࠆ࡜ࠗࡉ࡜࡝ߦߟ޿ߡߪ‫ߩߘޔ‬㒢ࠅߢߪߥ޿‫ޕ‬
8. ᧄ࠰ࡈ࠻࠙ࠚࠕߦߪ‫ޔ‬ේೣߣߒߡ‫ޔ‬GPL߅ࠃ߮LGPLߦḰ᜚ߔࠆ࡜ࠗ࠮ࡦࠬ
߇ઃᏪߐࠇߚ࠰ࡈ࠻࠙ࠚࠕࠍ⚵ߺㄟ߹ߥ޿ߎߣ‫ޕ‬
9.ᧄ࠰ࡈ࠻࠙ࠚࠕߩ࠰࡯ࠬࠦ࡯࠼ߪࠝ࡯ࡊࡦ࠰࡯ࠬߣߒߡ౏㐿ߔࠆ‫ޔߡߞࠃ ޕ‬
⚊ຠ‛ߦߪ㐿⊒ㆊ⒟ߩࡊࡠࠣ࡜ࡓࠦ࡯࠼߇ᱷࠄߥ޿ࠃ߁ߦߔࠆ‫ ޕ‬㐿⊒ㆊ⒟
ߢ૶↪ߒߚ࠺ࡃ࠶ࠣ⴫␜‫ޔ߮ࠃ߅ޔ‬ਇᔅⷐߥࠦࡔࡦ࠻ㇱಽߪߔߴߡ೥㒰ߒ
ߡ⚊ຠߔࠆ߽ߩߣߔࠆ‫ޕ‬
10. ฦࠦ࡯࠼ߩౝㇱಣℂߪ‫౏ߡߒߣࠬ࡯࠰ࡦࡊ࡯ࠝޔ‬㐿ߔࠆߎߣࠍ⠨ᘦߒ‫ޔ‬ㆡ
ಾߥࠕ࡞ࠧ࡝࠭ࡓ╬ࠍㆬᛯߒߡታⵝߔࠆ߽ߩߣߔࠆ‫ ޕ‬዁᧪ߩᡷ⦟߇࿎㔍ߣ
ߥࠆࠃ߁ߥ‫ޔ‬น⺒ᕈߩૐ޿ࠦ࡯࠺ࠖࡦࠣࠬ࠲ࠗ࡞߿ᢙ୯╬ߩࡂ࡯࠼ࠦ࡯࠺
ࠖࡦࠣࠍߢ߈ࠆߛߌឃ㒰ߔࠆ߽ߩߣߔࠆ‫ޕ‬
11. 㐿⊒ߔࠆࡕࠫࡘ࡯࡞ߪ‫߇࠭ࠗࠨࡓ࡜ࠣࡠࡊߌߛࠆ߈ߢޔ‬ዊߐߊߥࠆࠃ߁ߦ
㐿⊒ߔࠆ߽ߩߣߔࠆ‫ޕ‬
6 ᡰ⛎ຠ
ᧄ⺞㆐᩺ઙߦⷐߔࠆߔߴߡߩ⾌↪ߪ‫ޔ‬ၮᧄ⊛ߦᧄ⺞㆐ߦ฽߹ࠇࠆ߽ߩߣߔࠆ‫ߎޕ‬
ࠇߦߪ‫▚⸘ޔ߫߃଀ޔ‬ᯏ߿㐿⊒↪࠰ࡈ࠻࠙ࠚࠕ╬ߩ⾼౉⾌↪ߥߤ߽฽߹ࠇࠆ‫ߚޕ‬
ߛߒ‫⊒ޔ‬ᵈ⠪߆ࠄ⾉ਈน⢻ߥᯏ᧚ߦߟ޿ߡߪ‫⾉ޔ‬ਈࠍᬌ⸛ߔࠆ߽ߩߣߔࠆ‫ޔߚ߹ޕ‬
㐿⊒ߦ޽ߚߞߡᔅⷐߥBitVisorߩ઀᭽ߦߟ޿ߡߪ‫⊒ޔ‬ᵈ⠪ߩⷐ᳞ߦᔕߓߡ‫ޔ‬ද⼏
ߩ਄‫⊒ޔ‬ᵈ⠪߆ࠄឭ␜ߔࠆ‫ޕ‬
7 ᯏ⢻⹜㛎
ᧄ᩺ઙߢᡷ⦟ߒߚVMM࠰ࡈ࠻࠙ࠚࠕ߇ᱜᏱߦേ૞ߔࠆߎߣࠍ⏕⹺ߔࠆߚ߼ߩᯏ
⢻⹜㛎↪ࡊࡠࠣ࡜ࡓࠍ૞ᚑߒ‫ᦼ౉⚊ޔ‬㒢߹ߢߦએਅߩᯏ⢻⹜㛎ࠍⴕ߁ߎߣ‫ ޕ‬ᯏ
⢻⹜㛎ߩౝኈߪ‫ޔ‬ᯏ⢻⹜㛎઀᭽ᦠߦ⸥タߒ‫⚿ߩߘޔ‬ᨐߪ‫ޔ‬ታᣉႎ๔ᦠߦ߹ߣ߼ߡ
⸥タߔࠆߎߣ‫ޕ‬
1. EPT/NPTᯏ⢻߇៞タߐࠇߡ޿ࠆࡊࡠ࠮࠶ࠨߢታⴕߒ‫ޔ‬หᯏ⢻߇૶↪ߐࠇߡ
޿ࠆߎߣࠍ‫ߢ࠼࡯ࡕ࡮࠻ࠢ࠹ࡠࡊޔ‬േ૞ߔࠆࠥࠬ࠻OS਄߆ࠄ⏕⹺ߔࠆ‫ޕ‬
2. Unrestricted guestᯏ⢻߇៞タߐࠇߡ޿ࠆࡊࡠ࠮࠶ࠨߢታⴕߒ‫ޔ‬หᯏ⢻߇૶↪
ߐࠇߡ޿ࠆߎߣࠍ‫ޔ‬real-address modeߢേ૞ߔࠆࠥࠬ࠻OS਄߆ࠄ⏕⹺ߔࠆ‫ޕ‬
3. Intelࡊࡠ࠮࠶ࠨߢታⴕߒ‫ޔ‬ዋߥߊߣ߽߭ߣߟߩ଀ᄖߦߟ޿ߡ‫଀ޔ‬ᄖࠍ↢ᚑ
ߒߡ߆ࠄ଀ᄖࡂࡦ࠼࡜߇๭߮಴ߐࠇࠆ߹ߢߩᤨ㑆߇ᷫዋߒߡ޿ࠆߎߣࠍ‫ޔ‬
ࡊࡠ࠹ࠢ࠻࡮ࡕ࡯࠼ߢേ૞ߔࠆࠥࠬ࠻OS਄߆ࠄ⏕⹺ߔࠆ‫ޕ‬
4. ࡑ࡞࠴ࠦࠕ߇៞タߐࠇߡ޿ࠆAMDࡊࡠ࠮࠶ࠨߢታⴕߒ‫࠻ࠬࠥޔ‬OSߣߒߡ
Linuxࠍ⿠േߒߡ‫࠻ࠬࠥޔ‬OS߆ࠄࡑ࡞࠴ࠦࠕ߇⹺⼂ߐࠇߡ޿ࠆ߆⏕⹺ߔࠆ‫ޕ‬
5. ࠥࠬ࠻OSߣߒߡ64ࡆ࠶࠻ߩLinux߇⿠േߔࠆߎߣࠍ⏕⹺ߔࠆ‫ޔᤨߩߎޕ‬
BitVisorߩAHCI‫ޔ‬NIC‫ޔߪߚ߹ޔ‬USBߩ࠺ࡃࠗࠬ࠼࡜ࠗࡃࠍ᦭ലߦߒߡ߅߈‫ޔ‬
ࠥࠬ࠻OS਄ߢኻᔕߔࠆ࠺ࡃࠗࠬ࠼࡜ࠗࡃ߇േ૞ߒߡ޿ࠆߎߣࠍ⏕⹺ߔࠆ‫ޕ‬
6. TPM߇៞タߐࠇߡ޿ࠆࠦࡦࡇࡘ࡯࠲ߢ‫ޔ‬ᡆૃੂᢙߩࠪ࡯࠼ߣߥࠆ‫ޔ‬TPMߩ
ੂᢙ↢ᚑེߦࠃߞߡ↢ᚑߐࠇߚੂᢙࠍ಴ജߒ‫ੂޔ‬ᢙ߇↢ᚑߐࠇߡ޿ࠆߎߣ
ࠍ⏕⹺ߔࠆ‫ޕ‬
7. ࡑ࡞࠴ࠦࠕCPU߇៞タߐࠇߡ޿ࠆࠦࡦࡇࡘ࡯࠲ߢታⴕߒ‫ޔ‬ೋᦼൻߦ߆߆ࠆ
ᤨ㑆߇ᷫዋߒߡ޿ࠆߎߣࠍ⏕⹺ߔࠆ‫ޕ‬
8 ᮭ೑
ᮭ೑ߦߟ޿ߡ
1. ᧄ᩺ઙߢ㐿⊒ߒߚࡊࡠࠣ࡜ࡓߦ㑐ߔࠆᮭ೑㧔⪺૞ᮭᴺ╙21᧦߆ࠄ╙28᧦ߦ
ቯ߼ࠆߔߴߡߩᮭ೑ࠍ฽߻㧕෸߮ᚑᨐ‛ߩ⪺૞ᮭߪ‫⊒ߡߴߔޔ‬ᵈ⠪ߦᏫዻ
ߔࠆ߽ߩߣߔࠆ‫ޕ‬
2. ડᬺ߇⪺૞ᮭࠍᚲ᦭ߔࠆࡊࡠࠣ࡜ࡓ㧔଀߃߫‫౏ࠍ࠼࡯ࠦࠬ࡯࠰ޔ‬㐿ߢ߈ߥ
޿࡜ࠗࡉ࡜࡝ߥߤ㧕߿‫⊒ઁߩߘޔ‬ᵈ⠪߇ឭ␜ߔࠆએᄖߩࠝ࡯ࡊࡦ࠰࡯ࠬߩ
ࡊࡠࠣ࡜ࡓߪ೑↪ߒߥ޿߽ߩߣߔࠆ‫ޕ‬
3. ᧄ᩺ઙߩ࠰ࡈ࠻࠙ࠚࠕࠍ㐿⊒ߔࠆߦ޽ߚࠅ‫ޔ‬਄⸥ ߩࡊࡠࠣ࡜ࡓࠍෳ⠨ߦߩ
ߺ೑↪ߔࠆ႐วߢ޽ߞߡ߽‫ޔ‬㐿⊒೨ߦᔅߕ⊒ᵈ⠪ߦႎ๔ߒߚ਄ߢ‫ߩߘޔ‬ข
ࠅᛒ޿ߦߟ޿ߡ೎ㅜද⼏ࠍⴕ߁߽ߩߣߔࠆ‫ޕ‬
9 ଻቞
଻቞߅ࠃ߮ࠨࡐ࡯࠻૕೙ߦߟ޿ߡ
1. ⚊ຠᓟ1ᐕ㑆ߪ℩∎ᦼ㑆ߣߒ‫ޔ‬ਇㇺว߳ߩ⋥ធ⊛ߥኻᔕ‫ߩࠕࠚ࠙࠻ࡈ࠰ޔ‬ᯏ
⢻߅ࠃ߮ታ⃻ᣇᴺߦ㑐ߔࠆ⾰໧߳ߩ࿁╵‫ޔ‬BitVisorߩ৻ㇱᯏ⢻ߣߒߡേ૞ߐ
ߖࠆߚ߼ߦᔅⷐߥ໧㗴⸃᳿ߩߚ߼ߩᖱႎឭଏߦදജߔࠆߎߣ‫ޕ‬
2. ᧄ࠰ࡈ࠻࠙ࠚࠕߦ㑐ߔࠆ⾰໧߿໧޿วࠊߖߦߪ‫ޔ‬ㄦㅦߦ‫ޔߟ߆ޔ‬ㆡಾߦኻ
ᔕߢ߈ࠆ଻቞࡮ࠨࡐ࡯࠻૕೙߇ᢛ߃ࠄࠇߡ޿ࠆߎߣ‫ޕ‬
3. ਄⸥ 1ߩ℩∎ᦼ㑆ਛߦ‫ߚࠇߐ⷗⊒߇ࠣࡃߩࠕࠚ࠙࠻ࡈ࠰ᧄޔ‬႐ว‫ࡈ࠰ᧄޔ‬
࠻࠙ࠚࠕߩ࠰࡯ࠬࠦ࡯࠼ࠍୃᱜߒ‫ޟޔ‬2 ⚊౉ຠ‫⸥ߦޠ‬タߩA)ߩᦝᣂ 1࠮࠶
࠻ࠍឭ಴ߔࠆߎߣ‫ޔߚ߹ޕ‬B)ߩᏅಽ߇޽ࠇ߫৻✜ߦឭ಴ߔࠆߎߣ‫ޕ‬໧㗴⸃
᳿߇࿎㔍ߥ႐วߪ‫ߩߘޔ‬ᣦࠍ⊒ᵈ⠪ߦႎ๔ߒ‫ޔ‬೎ㅜද⼏ࠍⴕ߁ߎߣ‫ޕ‬
10 ߘߩઁ
1. ᄾ⚂ᓟ‫ޔ‬ᯏ⢻࡮ᕈ⢻ߥߤߩ઀᭽ߦߟ޿ߡ‫ޔ‬ᒰೋ઀᭽ߣᏅ⇣߇↢ߓߚ႐วߪ‫ޔ‬
⊒ᵈ⠪ߣ⹦⚦ᛂวߖࠍⴕ޿‫ޔ‬ᄌᦝౝኈࠍ᣿⸥ߒߚ‫ޟ‬ᛂߜวࠊߖ⸥㍳ᦠ‫ޠ‬1
ㇱࠍᛂߜวࠊߖᓟ1ㅳ㑆એౝߦឭ಴ߒ‫ޔ‬ᛚ⹺ࠍᓧߡ⵾૞ߦ⌕ᚻߔࠆߎߣ‫ߥޕ‬
߅‫ޔ‬ෳ⠨࿑㕙ߩឭ಴ࠍ᳞߼ࠆߎߣ߇޽ࠆ‫ޕ‬
2. ࠰ࡈ࠻࠙ࠚࠕ㐿⊒ߩㅴ᝞ߣຠ⾰ߩ⏕⹺ߩߚ߼‫ᦼ౉⚊ޔ‬㒢ߦవ┙ߞߡ‫ޔ‬ਛ㑆
ႎ๔ߩឭ಴ࠍ᳞߼ࠆߎߣ߇޽ࠆ‫ޕ‬ਛ㑆ႎ๔ࠍ᳞߼ࠄࠇߚ႐วߪ‫ޔ‬㐿⊒߇ቢ
ੌߒߚ࠰ࡈ࠻࠙ࠚࠕࠦ࡯࠼ߣታᣉߒߚᯏ⢻⹜㛎ߩ৻ㇱࠍ߹ߣ߼ߡឭ಴ߔࠆ
ߎߣ‫ޕ‬
3. 㐿⊒ᦼ㑆ਛߪ‫⊒ޔ‬ᵈ⠪ߩ᳞߼ߦᔕߓߡ‫ޔ‬ቯᦼ⊛ߦㅴ᝞⁁ᴫߩႎ๔ࠍⴕ߁ߎ
ߣ‫ޔ߅ߥޕ‬ᔅⷐߦᔕߓߡ‫ޔ‬㐿⊒ߩ⹦⚦ߦߟ޿ߡᛂߜวࠊߖࠍⴕ߁ߎߣ߇޽
ࠆ‫ޕ‬
4. ฃᵈ⠪ߪ‫ޔ‬Intel VT‫ޔ‬AMD-V╬ߩH/W઒ᗐൻᡰេᯏ⢻ࠍ೑↪ߒߚVMM࠰ࡈ
࠻࠙ࠚࠕߩ㐿⊒⚻㛎ࠍ᦭ߒߡ޿ࠆߎߣ‫ޕ‬
5. ฃᵈ⠪ߪ‫ޔ‬OpenSSL╬ߩᥧภൻᯏ⢻ߦ㑐ߔࠆ࠰ࡈ࠻࠙ࠚࠕߩ㐿⊒⚻㛎ࠍ᦭
ߒߡ޿ࠆߎߣ‫ޕ‬
6. ฃᵈ⠪ߪ‫ޔ‬TPMߦ㑐ߔࠆ࠰ࡈ࠻࠙ࠚࠕߩ㐿⊒⚻㛎ࠍ᦭ߒߡ޿ࠆߎߣ‫ޕ‬
7. ᧄ᩺ઙߦኻߔࠆߘߩઁਇ᣿ὐߦߟ޿ߡߪ‫⊒ޔ‬ᵈ⠪ߣද⼏ߒߡಣℂߔࠆߎߣ‫ޕ‬
⵾ㅧ⺧⽶ᄾ⚂ᦠ㧔᩺㧕
ㅧ
ຠ
ฬ
ࡂ࡯࠼࠙ࠚࠕᯏ⢻ࠍᵴ↪ߒߚ8//࠰ࡈ࠻࠙ࠚࠕߩᡷ⦟‫৻ޓ‬ᑼ
⵾
⺧ ⽶ ઍ ㊄ 㗵
㊄‫ޓޓޓ‬౞਽
߁ߜᶖ⾌⒢㗵෸߮࿾ᣇᶖ⾌⒢㗵
‫ޓޓޓ‬౞ 㧔ᶖ⾌⒢ᴺ╙᧦╙㗄෸߮╙᧦ਗ߮ߦ࿾ᣇ⒢ᴺ
╙᧦ߩ෸߮╙᧦ߩߩⷙቯߦࠃࠅ▚಴ߒߚ߽ߩߢ‫ޔ‬ઍ㊄㗵ߦಽߩࠍਸ਼ߓߡᓧߚ㗵ߢ޽ࠆ‫ޕ‬㧕
‫⊒ޓ‬ᵈ⠪࿖┙ᄢቇᴺੱ╳ᵄᄢቇᄾ⚂ᜂᒰᓎ⽷ോᜂᒰ೽ቇ㐳᫪ᧄᶈ৻ߣ⺧⽶⠪
ߣߩ㑆ߦ߅޿ߡ਄⸥ߩ⵾ㅧ㧔એਅ‫⵾ޟ‬ㅧ‫ޕ߁޿ߣޠ‬㧕ߦߟ޿ߡ‫ޔ‬਄⸥ߩઍ㊄㗵ߢ⵾ㅧᄾ⚂ࠍ⚿߽߱ߩߣ
ߔࠆ‫ޕ‬
╙㧝᧦ ⺧⽶⠪ߪ‫ޔ‬೎⚕ߩ઀᭽ᦠߦၮߠ޿ߡ⵾ㅧߔࠆ߽ߩߣߔࠆ‫ޕ‬
╙㧞᧦ ‫⵾ޓ‬ຠߪ‫ޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇ✚ว⎇ⓥ᫟$᫟ቶߦ߅޿ߡᒁᷰߒࠍߔࠆ߽ߩߣߔࠆ‫ޕ‬
╙㧟᧦ ቢᚑᦼ㒢ߪ‫ޔ‬ᐔᚑᐕ᦬ᣣߣߔࠆ‫ޕ‬
╙㧠᧦ ‫⵾ޓ‬ㅧቢᚑㅢ⍮ᦠߪ‫ޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇࠪࠬ࠹ࡓᖱႎᎿቇ╬ᡰេቶળ⸘ଥߦㅍઃߔࠆ߽
ߩߣߔࠆ‫ޕ‬
╙㧡᧦ ‫⽶⺧ޓ‬ઍ㊄ߪ㧝࿁ߦᡰᛄ߁߽ߩߣߒ‫ޔ‬ᬌᩏ⚳ੌᓟ‫ޔ‬ㆡᴺߥ⺧᳞ᦠࠍฃℂߒߚᣣ߆ࠄ⿠▚ߒߡ
ᣣએౝߦᡰᛄ߁߽ߩߣߔࠆ‫ޕ‬
╙㧢᧦ ‫⽶⺧ޓ‬ઍ㊄ߩ⺧᳞ᦠߪ‫ޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇࠪࠬ࠹ࡓᖱႎᎿቇ╬ᡰេቶળ⸘ଥߦㅍઃߔࠆ
߽ߩߣߔࠆ‫ޕ‬
╙㧣᧦ ‫⵾ߩߎޓ‬ㅧߦߟ޿ߡ‫⽶⺧ޔ‬⠪߇ᒁᷰߒࠍቢੌߒߚߩߜ‫ޔ‬㧝ᐕએౝߦ⊒ᵈ⠪߇℩∎ࠍ⊒⷗ߒߚ
ߣ߈ߪ‫ୃߦߜߛߚޔ‬ᱜߔࠆ߽ߩߣߒ‫ୃߩߎޔ‬ᱜߦⷐߒߚ⾌↪ߪߔߴߡ⺧⽶⠪ߩ⽶ᜂߣߔࠆ‫ޕ‬
╙㧤᧦ ‫ޓ‬ᄾ⚂଻⸽㊄ߪ‫఺ޔ‬㒰ߔࠆ‫⽶⺧ޔߒߛߚޕ‬⠪ߩ᡿ᗧ߹ߚߪ㊀ᄢߥㆊᄬߦࠃࠅ⵾ㅧߩ⺧⽶߇⪺
ߒߊㆃᑧߔࠆ߅ߘࠇ߇޽ࠆߣ߈ߪ‫⊒ޔ‬ᵈ⠪ߪ‫ޔ‬ᄾ⚂ࠍ⸃㒰ߔࠆߎߣ߇ߢ߈ࠆ߽ߩߣߔࠆ‫ߎޕ‬
ߩ႐วߦ߅޿ߡ⺧⽶⠪ߪᄾ⚂㗵ߩ㧝㧜ಽߩ㧝ߦ⋧ᒰߔࠆ㆑⚂㊄ࠍ⊒ᵈ⠪ߦᡰᛄ߁߽ߩߣߔ
ࠆ‫ޕ‬
╙㧥᧦ ‫ߩߎޓ‬ᄾ⚂ߦቯ߼ࠆ߽ߩߩ߶߆‫ޔ‬ᔅⷐߥ⚦⋡ߪ‫ޔ‬࿖┙ᄢቇᴺੱ╳ᵄᄢቇᄾ⚂੐ോขᛒ⚦ೣߦ
ࠃࠆ߽ߩߣߔࠆ‫ޕ‬
╙᧦ ‫ߩߎޓ‬ᄾ⚂ߦߟ޿ߡᬌᩏߩ౞Ṗߥታᣉࠍ࿑ࠆߚ߼‫⽶⺧ޔ‬⠪ߪ⊒ᵈ⠪ߩⴕ߁ᬌᩏߦදജߔࠆ߽
ߩߣߔࠆ‫ޕ‬
╙᧦ ‫ߩߎޓ‬ᄾ⚂ߦߟ޿ߡ‫⊒ޔ‬ᵈ⠪⺧⽶⠪㑆ߦ⚗੎ࠍ↢ߓߚߣ߈ߪ‫ޔ‬ਔ⠪ද⼏ߩ਄ߎࠇࠍ⸃᳿ߔࠆ
߽ߩߣߔࠆ‫ޕ‬
╙᧦ ‫ߩߎޓ‬ᄾ⚂ߦቯ߼ߩߥ޿੐㗄ߦߟ޿ߡ‫ࠍࠇߎޔ‬ቯ߼ࠆᔅⷐ߇޽ࠆ႐วߪ‫⊒ޔ‬ᵈ⠪⺧⽶⠪㑆ߦ
߅޿ߡද⼏ߒߡቯ߼ࠆ߽ߩߣߔࠆ‫ޕ‬
਄⸥ᄾ⚂ߩᚑ┙ࠍ⸽ߔࠆߚ߼‫⊒ޔ‬ᵈ⠪⺧⽶⠪ߪᰴߦ⸥ฬߒශࠍ᛼ߔ߽ߩߣߔࠆ‫ޕ‬
ߎߩᄾ⚂ᦠߪ㧞ㅢ૞ᚑߒ‫ޔ‬෺ᣇߢฦ㧝ㅢࠍᚲᜬߔࠆ߽ߩߣߔࠆ‫ޕ‬
ᐔᚑ
ᐕ
᦬
ᣣ
⊒‫ޓ‬ᵈ‫ޓ‬⠪‫ޓޓ‬
⨙ၔ⋵ߟߊ߫Ꮢᄤ₺บৼ⋡⇟࿾ߩ
࿖┙ᄢቇᴺੱ╳ᵄᄢቇ
ᄾ⚂ᜂᒰᓎ
⽷ോᜂᒰ೽ቇ㐳᫪‫ޓޓᧄޓ‬ᶈ‫৻ޓ‬
⺧‫⽶ޓ‬⠪ ‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬
‫ޓޓޓޓޓޓޓޓޓޓ‬