ãã®ãªãŒãã³ãœãŒã¹ããã°ã©ã ã«ãããBTC-eãšMt.Goxã«è¿ éã«è³ããèªåååŒã®ã«ãŒã«ãèšå®ã§ããŸãã
OpenSSLã䜿çšããçŽç²ãªQt 4ã§æžãããŠãããç§ã®æèŠã§ã¯ãéçºåŽããã®èå³æ·±ãæ©èœããããŸãã
èæ¯
4æã«ãããã³ã€ã³ã®çºæ¿ã¬ãŒããæ¥äžæããé ãç§ãšç§ã®å人Dybikã¯ãããã®å€ãã®äººãšåæ§ã«ããã®çŽ ââæŽãããæå·é貚ã«èå³ãæã¡ãŸããã ç§ãã¡ã¯ããã®èšäºãèªãã 人ã®å€ããã蚌åžååŒæã«ææŠããããšã«ãããšæããŸãã çµå±ã®ãšããããããã³ã€ã³ãååŒããããã®æã人æ°ã®ããååŒæã¯Mt.Goxã§ãã ããã§ç»é²ãããã¡ãŒã¹ãããããéå§ããŸããã
ã³ãŒã¹ã¯çµ¶ããæé·ããè奮ã¯å¢å€§ããŠããŸããã ã€ã³ã¿ãŒãããå šäœãéšç¶ãšããŠããŠããã¬ãã§ããããã³ã€ã³ã«ã€ããŠè©±ããŠããããšãèŠããŠããŸãã Mt.Goxãµã€ãã§ååŒããŸãããããµã€ããé »ç¹ã«ã¯ã©ãã·ã¥ããŸããã 泚æãããšã€ã©ã€ã©ããŸããããã£ã³ã»ã«ã§ããŸããã ããããå€æããŸãããããã£ã³ã»ã«ãã¿ã³ã¯ç¢ºèªãå¿çãããŸããã§ããã 泚æããã£ã³ã»ã«ããããã©ããã¯äžæã§ããã
ããã§ããã泚æãäœæããããã®ã«ãŒã«ããµã€ãã«èšå®ããæ¹æ³ããªãã®ã¯ãªãã§ããããšèããŸããã 24æéã³ãŒã¹ããã©ãããšã¯ã§ããŸãã;ã«ãŒã«ãå€ã«æ®ããŠãããšããã§ãããã ããã°ã©ã ãæ¢ããŠãPythonããããšãç§ã«ã¯ç解ã§ããªããã¹ã¯ãããçšã®ææã¯ã©ã€ã¢ã³ããèŠã€ããŸããã ããã¡ã€ã«ãç·šéããŠã«ãŒã«ãä¿®æ£ããŸããïŒã ããã¯äžå¿«ã ããšæã£ãã æ©æ¢°çãªãšã©ãŒããŒããŸãã¯ã³ã³ãã®ã¹ããããèš±å¯ããªãããã°ã©ã ãå¿ èŠã§ãã
ã³ãŒã¹ã¯çµ¶ãããžã£ã³ãããŠãããç§ãã¡ã¯å©çãäžããŠå£²è²·ã§ããŸããã ç§ã¯å°ããªãžã£ã³ãã§å©çãåŸãããšããŸããã Mt.Goxã®æ³šæãã°ã«ã¯ãè³Œå ¥ææ°æã®éé¡ãšãšãã«å¥ã®ã¢ã€ãã ãæ確ã«è¡šç€ºãããŠããŸãããã販売ã¢ã€ãã ã¯ãããŸããã§ããã è³Œå ¥ã®ã¿ã®ææ°æããšæããŸããã ãããŠåœŒãæ°ãããšã圌ã¯ç§ãè² ããŠããããšã«æ°ã¥ããŸããã 販売ææ°æããããéé¡ã«çµã¿èŸŒãŸããŠããŸãã ç§ã®æèŠã§ã¯ã販売ãšè³Œå ¥ã®äž¡æ¹ã§åãææ°æã衚瀺ããæ¹ãè«ççã§ãã ããããå€åMt.Goxã¯ç§ãã¡ãæ··ä¹±ããããã®ã§ããããïŒ ç¥ããŸãã ç§ã¯ãããç¥ããããã«ååŒãå§ããŸããã
ããã¯ããªãã®éã«ãªããç§ãã¡ã¯ããã»ã©å€ãã®æéãè²»ãããã®ã¯ç¡é§ã§ã¯ãªãããšã«æ°ã¥ããŸããã ãããŠãããªãèªèº«ãèŠããŠããããã«ãã³ãŒã¹ãå®å šã«åŽ©å£ããç§ãã¡ãæ»æãåããŸããã ãµã€ããã¯ã©ãã·ã¥ãããããã³ã€ã³ã販売ããããšãäžå¯èœã«ãªãããã®åŸãMt.Goxã¯1æ¥éå®å šã«ååŒãåçµããŸããã ã³ãŒã¹ã¯æ¥èœããŸããã æè³é¡ã®ååã倱ããŸããã
次ã«äœãããïŒ æ®é¡ãéäŒããŠåŒãåºããŸããïŒ ç§ã¯å°ãã®éçããªãæŠç¥ãèãå§ããŸãã;ããã¯ç§ã®å¿ãé¢ããŸããã§ããã Pythonãããããæ¢ãã§ããïŒ ããããèªåèªèº«ã®äœããå®çŸããããšã¯ç§ã«ãšã£ãŠèå³æ·±ããã®ã«ãªããŸããã Mt.Goxã§ååŒãå§ããã°ããã®ãšããã©ãã«ãèŠã€ãããªãç°¡åãªããã°ã©ã ããã§ã«ç®ã®åã«ãããQt Bitcoin Traderã®éçºãå§ããŸããã
äŒã-Qt Bitcoin Trader
æåã®èµ·ååŸããããã¡ã€ã«äœæãŠã£ã³ããŠã衚瀺ãããŸãã
蚌åžååŒæãéžæããInfoããã³Tradeãã©ã¡ãŒã¿ã䜿çšããŠAPIããŒãååŸããããã°ã©ã ã«å ¥åããŠã匷åãªãã¹ã¯ãŒããäœæããå¿ èŠããããŸãã
ãã¹ãŠã®ããŒã¿ã¯ãAES256æå·åã§OpenSSLã䜿çšããŠæå·åããããŠãŒã¶ãŒãããã¡ã€ã«ãã©ã«ããŒã«ä¿åãããŸãã
ãã°ã€ã³ãŠã£ã³ããŠã§ãæŽæ°ã®ç¢ºèªãæå¹ã«ã§ããŸãã
Macããã³WindowsãŠãŒã¶ãŒã®å ŽåãèªåæŽæ°ããããŸãã
æ°ããããŒãžã§ã³ã®ç¢ºèªã¯ã GitHubãããã¡ã€ã«ãããŠã³ããŒãããããšã§å®è¡ãããŸãããã®ãã¡ã€ã«ã«ã¯ãRSA2048ã䜿çšããŠæå·åããããã€ããªãã¡ã€ã«ã®ãã§ãã¯ãµã ãä¿åãããŸãã ãããã£ãŠãæªæã®ãããã¡ã€ã«ã®ãªãããŸãã®ãªã¹ã¯ã¯ãããŸããã
æ°ããããŒãžã§ã³ããªãªãŒã¹ããããšã次ã®ãããªãŠã£ã³ããŠã衚瀺ãããŸãã
ã·ã³ãã«ãªã€ã³ã¿ãŒãã§ãŒã¹ãéçºããŠããã¹ãŠãèŠããããã«ããŸããã ç»é¢ã®è§£å床ãäœããŠãŒã¶ãŒã«ã¯åé¡ãããŸããããåŸã§ãããã®ã€ã³ã¿ãŒãã§ã€ã¹ãæé©åããŸãã
å·ŠåŽã«ã¯ããªã¢ã«ã¿ã€ã ã§æŽæ°ãããæªåŠçã®æ³šæã®ãªã¹ãã衚瀺ãããŸãã
è²·ã泚æãšå£²ã泚æãäœæã§ããŸããããã®éé¡ãæ®é«ãè¶ ããªãããã«ããŸãã æè¿ãMt.Goxã¯æ®é«ãè¶ ãã泚æãããã«åé€ããŸãã
æåŸã«ã泚æããã£ã³ã»ã«ãããšãã¹ããŒã¿ã¹ãããã£ã³ã»ã«æžã¿ãã«ãªããŸãããµã€ãã§ãã³ã°ããå Žåã§ããAPIã¯é 信確èªãåãåããŸãã
ææ°ã®äŸ¡æ Œãé€ãããã¹ãŠã®åžå ŽããŒã¿ã¯1åã®ãªã¯ãšã¹ãã§æŽæ°ãããŸãã ãŸããæè¿ã®ååŒã®äŸ¡æ ŒããæŽæ°ãããŸãã
ææ°æèšç®æ©ã¯ãå·Šäžã®å°ããªãã¿ã³ã§å©çšã§ããŸãã ç§ã¯ãã£ãŒãããã¯ãåãåãããªã³ã©ã€ã³èšç®æ©ã®ãŠãŒã¶ãŒãæ £ã芪ããã§ããæ¹æ³ã«ããŸããã
æ®é«ãšææ°ã®äŸ¡æ Œãèªåçã«èªã¿èŸŒãŸããç¹ãé€ããŠãåãããã«æ©èœããŸããããã¯äŸ¿å©ã§ãã
奜ããªã ãé»åãéãããšãã§ããŸãã
泚æãèªåçã«äœæããããã®ã«ãŒã«ãç°¡åã«äœæã§ããŸãã
ããã§ããé çªããšã䞊åãã®2ã€ã®ã¢ãŒãã§ã«ãŒã«ãäœæã§ããŸãã
䞊åã¢ãŒãã§ã¯ãå€ãå€æŽãããšããã¹ãŠã®ã«ãŒã«ã®é¡äŒŒæ§ããã§ãã¯ããããããã®ã«ãŒã«ãå®è¡ã§ããŸãã ãé çªãã¢ãŒãã§ã¯ãã«ãŒã«ã®2è¡ç®ã¯ãæåã®è¡ãå®è¡ãããå Žåã«ã®ã¿ãã§ãã¯ãããŸãã ã«ãŒã«ã®é åºãå€æŽããŠç·šéã§ããŸãã
å€ã«ãã£ãŠã¯ãé³ã«ããèŠåããããŸãã ã¹ããŒã«ãŒã¢ã€ã³ã³ã¯ã¹ã€ãããã¿ã³ã§ãã
ã°ã«ãŒãããã¯ã¹ããã¿ããããŠåå¥ã®ãŠã£ã³ããŠã«ããããšã¯å¯èœã§ããããã¯ééããªãè€æ°ã®ã¢ãã¿ãŒã䜿çšããã®ã«äŸ¿å©ã§ãã
WindowsãŠãŒã¶ãŒã®å ŽåãããŒã¿ãã«ã¢ãŒããæå¹ã«ããããšãã§ããŸãã exeãã¡ã€ã«ãšåããã©ã«ããŒã«QtBitcoinTraderãã©ã«ããŒãäœæããå¿ èŠãããããã¹ãŠã®æå·åãããããŒã¿ãããã«ä¿åãããŸãã
Qt Bitcoin Traderã®å°æ¥ã®ããŒãžã§ã³ã§äœãæåŸ ãããŠããŸããïŒ
çŸåšã亀æBTC-eããã³Mt.GoxããµããŒãããŠããŸãã å¯èœã§ããã°ãä»ã®æã人æ°ã®ãã亀æã®ãµããŒããé çªã«çµäºããŸãã
websocket apiãšhttp apiãåæã«æ©èœããå¯èœæ§ããããŸãã
次ã¯ããªã¢ã«ã¿ã€ã ã§ã®ã°ã©ãã®è¡šç€ºã§ãã
åæã«ç£èŠããããã«ã1ã€ã®ãããã¡ã€ã«ã«ç°ãªã亀æããã³ç°ãªãé貚ã®APIãè¿œå ããããšãå¯èœã«ãªããŸãã
ã¹ã¯ãªããèšèªãæ°è¡ã§ããŸããŸãªååŒæã®äŸ¡æ ŒãåæããæŠç¥ãäœæããããšãã§ããã«ãŒã«ãžã®è¿œå ãšããŠã
Qt Bitcoin Traderãæ¹åããã«ã¯ã©ãããã°ããã§ããïŒ
çŸæç¹ã§ã¯ãããã°ã©ã ã¯è±èªããã€ãèªããã·ã¢èªããŠã¯ã©ã€ãèªãã¹ãã€ã³èªããªã©ã³ãèªããã«ãŠã§ãŒèªã«ç¿»èš³ãããŠããŸãã
ããã°ã©ã ãæ¯åœèªã«ç¿»èš³ããã®ã«åœ¹ç«ã¡ãŸãã ãã®ããã°ã©ã ã«ã¯ç¿»èš³ãšã³ãžã³ãçµã¿èŸŒãŸããŠããŸãã [æŠèŠ]ãã¿ã³ãã¯ãªãã¯ãããšãæé ã衚瀺ãããŸãã
ãããã°ã©ã ã®ç¿»èš³ããã¿ã³ãã¯ãªãã¯ãããšããã€ã¢ãã°ã衚瀺ãããŸãïŒ
以äžã¯ã翻蚳ãå¿ èŠãªãã¹ãŠã®ãã£ãŒã«ãã§ãã èµ€ãããã¹ãã®ãã£ãŒã«ãã¯ãè±èªã®ç¿»èš³ã«äžèŽãããã£ãŒã«ãã§ãã
ãé©çšããã¿ã³ãæŒããšãããã°ã©ã å ã®ç¿»èš³ãããã«è¡šç€ºãããé·ãããããã¹ããä¿®æ£ã§ããŸãã 翻蚳ãå®äºãããããã¡ã€ã«ãä¿åããæ瀺ã§æå®ãããã¡ãŒã«ã¢ãã¬ã¹ã«éä¿¡ããŸãã 転éã確èªããåŸãQt Bitcoin Traderã®æ¬¡ã®ããŒãžã§ã³ã«è¿œå ããŸãã
ãŸããå¯ä»è ã®é£çµ¡å æ å ±ãšãããã³ã€ã³ã¢ãã¬ã¹ã[翻蚳è ïŒ]ãã£ãŒã«ãã«æ®ãããšãå¿ããªãã§ãã ããã
ãŸããããã°ã©ã ã¯å¯ä»éã®ã¿ã§ç掻ããããã財æ¿çã«ããã°ã©ã ãéçºããã®ã«åœ¹ç«ã¡ãŸãã
ãµããŒããããã³ã€ã³ã¢ãã¬ã¹ïŒ 1d6iMwjjNo8ZGYeJBZKXgcgVk9o7fXcjc
å ¬åŒQtãããã³ã€ã³ãã¬ãŒããŒãªãœãŒã¹
GitHubãœãŒã¹
Windowsããã³Macçšã®ããŠã³ããŒãïŒSourceForge.netïŒ
Softpedia for WindowsããããŠã³ããŒããã
Softpedia for MacããããŠã³ããŒããã
BitcoinTalk RUSãã©ãŒã©ã
BitcoinTalk ENGãã©ãŒã©ã
BtcSecãã©ãŒã©ã
ãã§ã€ã¹ããã¯
VK
ãã£ãã·ã³ã°
ç§ã®ããã°ã©ã ãã€ã³ã¿ãŒãããã«ç»å Žãããšããã«ãç§ã®ããã°ã©ã ã®èª¬æãå«ãè€è£œãããã«çŸãå§ããŸããã
ããããQt Bitcoin TraderããŠã³ããŒããžã®ãªã³ã¯ã®ä»£ããã«ããŠã€ã«ã¹ãããŠã³ããŒãããããšãææ¡ãããŠããŸãã Qt Bitcoin Traderã®åœç©ãã€ã³ã¿ãŒãããäžã«éåžžã«å€ãã®ã«ã¯é©ããã qtbitcointrader.comã§ããããŠã€ã«ã¹ãžã®ãªã³ã¯ãå«ãåœç©ã§ãããwwwã qt-TRADAR.RUãåœç©ã§ãã ããã°ã©ã ãéåžžã«äººæ°ãããããšãç¥ã£ãŠããã°ãããã«ãããã®ãã¡ã€ã³ãã¹ã³ã¢ãªã³ã°ããŸãã ããã¯ç§ãšãã®èšäºãèªããã¹ãŠã®äººã«ãšã£ãŠã®æèšã ãšæããŸãã
ãªã³ã¯ãä¿¡é Œã§ãããã©ããããããªãå Žåã¯ãååã§ã°ãŒã°ã«ã§æ€çŽ¢ããŠãã ããã
ããã°ã©ã ã«çµã¿èŸŒãŸããŠããå®å šãªæŽæ°ã䜿çšããããšããå§ãããŸãã
Qt Bitcoin Traderã®éçºã®ç¹åŸŽ
çµã¿èŸŒã¿ã®ç¿»èš³ã¡ã«ããºã
ããã°ã©ã ã翻蚳ããã®ã«æšæºã®Qt Linguistãéžæããªãã£ãçç±ãçåã«æã£ãŠãããããããŸããã
奜ãã§ã¯ãããŸããããã©ãŒã ãç·šéãããšäŸ¿å©ã§ããããã¡ã€ã«ã翻蚳ããã«ã¯Qt Linguistèªäœãå¿ èŠã§ãããããããã°ã©ã ã®å šãŠãŒã¶ãŒã®5ïŒ ããæã£ãŠããŸããã
ãã®ãããç¬èªã®ãšã³ãžã³ãäœæããéçºè ã ãã§ãªããããã°ã©ã ã®ãã¹ãŠã®ãŠãŒã¶ãŒã«ãšã£ãŠã䟿å©ãªãã®ã«ããããšã«ããŸããã
GitHubã§JulyTranslatorã¯ã©ã¹ã®ãœãŒã¹ã³ãŒãã確èªã§ããŸãã ããã¯ãQHashã«ãã¹ãŠã®åèªã®é¢é£ä»ããæ ŒçŽããåºæ¬ã¯ã©ã¹ã§ãã ãã®ã¯ã©ã¹ã¯ã翻蚳ãã¡ã€ã«ãèªã¿èŸŒãã§ä¿åããããåã ã®ã€ã³ã¿ãŒãã§ã€ã¹ãªããžã§ã¯ãã翻蚳ããããã€ã³ã¿ãŒãã§ã€ã¹ãããã¡ã€ã«ã«ããã¹ããèªã¿èŸŒãã ãã§ããŸãã
翻蚳ããå¿ èŠã®ããåã€ã³ã¿ãŒãã§ã€ã¹ãªããžã§ã¯ãã«å¯ŸããŠãsetAccessibleNameïŒïŒã䜿çšããŠäžæã®ããã¹ãèå¥åãèšå®ããŸãã
JulyTranslatorã¯ã©ã¹ã®translateUié¢æ°ïŒQWidget * parentïŒã¯ãé¢æ°ãã©ã¡ãŒã¿ãŒãã芪ã®ãã¹ãŠã®åãŠã£ãžã§ããããã€ãã¹ããŸãã 翻蚳ããå¿ èŠãããåãŠã£ãžã§ããã¯ãã³ã³ã¹ãã©ã¯ã¿å ãŸãã¯ã·ã°ãã«ã«ãã£ãŠtranslateUiïŒïŒãåŒã³åºãå¿ èŠããããŸãã
ããšãã°ããã¹ãŠã®QPushButtonãã¿ã³ããã€ãã¹ããaccessibleNameïŒïŒå€ããããã©ããã確èªããããå Žåã¯JulyTranslator QHashã¯ã©ã¹ãããã®å€ã®é¢é£ä»ããååŸããŸã
foreach(QPushButton* curButton, par->findChildren<QPushButton*>()) if(!curButton->accessibleName().isEmpty()) curButton->setText(translateButton(curButton->accessibleName(),curButton->text()));
çµæã¯ããã¡ã€ã«ããèšèªãããŒããããããã€ã³ã¿ãŒãã§ãŒã¹ã«é©çšããã¯ã©ã¹ã§ãã
QLayoutã®åäœãå¿ ããã奜ãã§ã¯ãªãããã翻蚳ãé©çšããåŸãåãŠã£ãžã§ããã調ã¹ãŠããŠã£ãžã§ããã®é©åãªè¡šç€ºã確ä¿ããããã«æå°ãµã€ãºãèšç®ããæå°å¹ ãèšå®ããŸãã
ãã¿ã³ã®äŸïŒ
foreach(QPushButton* pushButtons, par->findChildren<QPushButton*>()) pushButtons->setMinimumWidth(qMin(pushButtons->maximumWidth(),QFontMetrics(pushButtons->font()).width(pushButtons->text())+10));
ãã®çµæãã€ã³ã¿ãŒãã§ã€ã¹ã®ã¹ããŒã¹ãç¯çŽããããã¹ãããŠã£ãžã§ãããè¶ ããªãããã«ããŸãã
2çªç®ã®æ®µéã¯ã翻蚳ã®äœæããŠãŒã¶ãŒãã¬ã³ããªãŒã«ããããšã§ãã
TranslationDialogã¯ã©ã¹ã¯ããã£ãŒã«ãã®ãªã¹ããçæããããã«èšèšãããŠããŸãã JulyTranslatorããããã¹ãã®é åå šäœãåŒãåºããåãã£ãŒã«ãã«å¯ŸããŠQTextEditãçæããŸãã
QTextEditã®ã¬ã€ã¢ãŠããåžžã«å¥œãã§ã¯ãªãã®ã§ãTranslationLineãŠã£ãžã§ãããäœæããŸããããããå€æŽãããšãããã¹ããå®å šã«ã©ããããŠã¹ããŒã¹ãç¯çŽããŸãã
ãã©ã³ã¹ã¬ãŒã¿ãŒã§äœããè¿œå ããããããã¹ããã£ãŒã«ãã«ãšã³ã¿ãŒãå ¥åããããããšãããã確èªã§ããŸãã ãã£ãŒã«ãã¯èªåçã«å¢æžããŸãã
GitHubãšSourceForgeã§ã®ã¿å®å šãªèªåæŽæ°
æŽæ°ã®åçã¯ç°¡åã§ããèµ·åæã«ããã°ã©ã ãraw.github.com/JulyIGHOR/QtBitcoinTrader/master/versions.txtãã¡ã€ã«ãããŒãããŸããããã¯GitHubã«å¹³æã§ãããŸãã
RSA2048ã䜿çšããŠæå·åãããSHAãã€ããªãã§ãã¯ãµã ããã¡ã€ã«ã«ä¿åãããŸãã
Public.keyã¯ããã°ã©ã ã®ãªãœãŒã¹ã«åã蟌ãŸããPrivate.keyã¯å®å šã«ä¿åããããã¹ã¯ãŒãã§ä¿è·ãããŠããŸãã
æŽæ°ã確èªããéãããã°ã©ã ã¯æå®ããããªã³ã¯ãããã¡ã€ã«ãRAMã«ããŠã³ããŒãããŸãããã¡ã€ã«ã15 MBãè¶ ããå ŽåãããŠã³ããŒãã¯ãã£ã³ã»ã«ãããŸãã
次ã«ãããŠã³ããŒããããããŒã¿ã®ãã§ãã¯ãµã SH1ãèšç®ãããæŽæ°ãã¡ã€ã«ãã埩å·åãããæ å ±ãšæ¯èŒãããŸãã
ãã§ãã¯ãµã ãäžèŽããå Žåãããã°ã©ã ã¯ãã¡ã€ã«ãRAMããQtBitcoinTrader.updãšãããã£ã¹ã¯ã«ä¿åããŸãã æ€èšŒãã§ãã¯ã®åŸããããèªã¿æ»ãããã¡ã€ã«ãé©åã«ä¿åãããŠãããã©ããããã§ãã¯ããŸãã æ€èšŒã«æåããåŸãèªåèªèº«ã®ååã* .bkpã«å€æŽãã* .updãã¡ã€ã«ãå ã®ãã¡ã€ã«åã«å€æŽããŸãã
åèµ·ååŸãäœåãªãã¡ã€ã«ã¯åé€ãããŸãã
ãã®ååã¯ãWindowsãšMac OS Xã®äž¡æ¹ã§åãããã«æ©èœããŸãã
ããšãã
ããã°ã©ã ã¯ããªãã®ããã«ååŒããã®ã§ã¯ãªããååŒãæ¯æŽããããã®ããŒã«ã«ãããªãããšãå¿ããªãã§ãã ããã
åŒãããããããèšäºããããããã£ããšæããŸãã
ãµããŒãããã£ãŒãããã¯ãæšå¥šäºé ãåãã§ããããŸãã