ビットコインの破壊

このメモは行動を促すものではありません。ここではビットコインとブロックチェーン テクノロジーの脆弱で潜在的に危険な側面について説明します。

脆弱なセンター

ビットコインとブロックチェーンの動作原理は、共通のデータベースを保存および変更することであり、その完全なコピーは各ネットワーク参加者によって保存されます。このシステムは分散化しているように見えます。その理由は…データベースが保存される単一の組織/サーバーはありません。また、ブロックチェーンの主な利点として分散化が挙げられます。これにより、ユーザーの知らないうちにビットコインに何も起こらないことが保証されます。


Elkin のブロック ペスト原則

ブロックチェーンが機能するためには、各ユーザーがブロックチェーン データベースの最新コピーをダウンロードし、特定のルールに従ってそれを操作する必要があります。これらのルールには、あるウォレットから別のウォレットへの資金移動の確認時に各取引の一定割合(取引手数料)を受け取る、ビットコインマイニングの原則の実装が含まれます。ユーザーは自分で 1,000,000 ビットコインを引き出して、それで何かを購入することはできません。他のユーザーの場合、アカウント内の金額は変更されません。また、自分のデータベース内でのみ他人のウォレットから資金を引き出すオプションも除外されます。この変更は他のビットコイン ユーザーには反映されず、無視されます。
現在の実装の脆弱性は、ビットコイン ウォレットがサーバー github 上に配置されていることです。分散化に関する広告スローガンを完全にブロックします。 単一のセンターからウォレットをダウンロードする必要はありません –開発者のウェブサイトでは、 ビットコインを扱うことは不可能です。つまり、開発者はいつでもネットワークを完全に制御できます。したがって、 ブロックチェーン技術自体は分散化されていますが、 ネットワークと連携するためのクライアントは単一のセンターからダウンロードされます。 >。
攻撃シナリオ–すべての資金を引き出して第三者の口座に現金化するためのコードがウォレットに追加されたとします。その後、最新バージョンのウォレットのユーザーはすべてのビットコインを自動的に(回復の可能性なしで)失うことになります。多くのウォレット所有者がソースコードをチェックして構築しているとは思えないため、そのような攻撃の結果はほとんどのユーザーに影響を与えるでしょう。

多数決で決定

ブロックチェーンは分散型 P2P ネットワークであり、すべてのトランザクションはユーザー自身によって自動的に確認されます。攻撃シナリオ–残りの 49% の確認を無視するには、ネットワークの 51% を取得する必要があり、その後、攻撃者はビットコイン/ブロックチェーンを完全に制御できるようになります。これは、残りの部分と重複するコンピューティング能力を接続することで実現できます。この攻撃シナリオは、51% 攻撃として知られています。 p >

できるかどうか教えてください

最初にウォレットを起動すると、コンピュータはペア – を生成します。秘密鍵と公開鍵を使用して、正しい動作を保証します。これらのキーの一意性は非常に高いですが、コード ワード – を使用してキーを生成するオプションもあります。いわゆる “ブレイン ウォレット“。ユーザーは鍵を頭の中に保存するため、wallet.dat ファイルをバックアップする必要はありません。このコードワードを使用して、いつでもキーを再生成できます。攻撃シナリオ –攻撃者はコードワードを選択または学習し、秘密鍵と公開鍵のペアを生成してウォレットを制御します。

コピーするだけ

秘密鍵と公開鍵のペアは、wallet.dat ファイルに含まれています。このファイルにアクセスできるソフトウェア –ビットコインウォレットにアクセスできる。このような攻撃に対する保護は、ユーザーがウォレットとのすべてのトランザクションで覚えて入力する必要があるコードワードを追加することです。コードワードを追加した後、攻撃者が完全な制御を得るには、wallet.dat とコードワードが必要になります。
また、コード ワードを入力すると、そのコード ワードがコンピュータのメモリに取り込まれるため、*他人* のメモリの読み取りを可能にするハードウェアやソフトウェアの脆弱性があると、ウイルス ソフトウェアがこのコード ワードを読み取ることが可能になることも付け加えておきます。

システムエラー

ビットコインの暗号化アルゴリズムをハッキングすると、ビットコインは即座に死に至ります。アルゴリズムの実装でエラーが発生し、それを発見した攻撃者がブロックチェーンの完全または部分的な制御を取得したとします。また、ビットコインで使用される暗号化アルゴリズムは、将来の量子コンピューター、その出現と量子アルゴリズムの実装によるハッキングから保護されていません。これにより、 ビットコインの現在の実装が終了します。ただし、これはポスト量子暗号化アルゴリズムに切り替えることで解決できます。

Windows 用デスマスク プロトタイプ

ビデオ:

Windows バージョン:
http://demensdeum.com/games/deathMask/prototype/DeathMaskPrototype.exe

Linux および OS X ユーザーは、ソースからゲームをビルドできます。
https://github.com/demensdeum/Death-Mask

次に、ゲームプレイ要素、照明、アニメーションを追加します。

なぜ 2017 年にゲームエンジンを作るのか?

多くの人が私に尋ねます、なぜ 2017 年にゲーム エンジンを作るのですか?結局のところ、すでに非常に多くの既製のソリューションが無料で市場に出回っているのです。

現在のゲーム開発市場の概要を記載した別の記事を用意し、Flame Steel Engine を作成するきっかけとなった理由を説明しました。

Reasons to Make New Game Engine in 2017

フレイムスチール:クーリエ・クイックアイズ

彼の名前はレビル、ニックネームはクイック・アイズでした。相棒の友人たちは彼をシュストリヤクと呼んだ。ストリート育ちの機敏な子供である彼は、何が面白いのか、誰からそれを得ることができるのかを常に知っています。このため、彼はアルテラの犯罪環境から尊敬を集めました。 14.
彼は今、ネイティブ・ファーム・ユナイテッドの倉庫にいました。周りには巨大な容器があり、薬品の匂いが
漂っていました。–なぜ起きたのですか?持って行って
ください。店員はうなり声を上げ、緊張した様子で足から足へと体を動かし、明らかに非常に恐怖を感じていたようだった。シャツが汗で濡れ
ています。–警備局の
者です。店員は顔面蒼白になりさらによろめき
ました。–それで今はどうなっている
でしょうか?–床の上で–手を頭の後ろに置いて
ください。店員は眉をひそめ、深呼吸をして手を下ろした。 Nimble Eyes は何かがおかしいと感じました –どうやら銃に手を伸ばしていたようだ。レビルは彼の傲慢な顔に一撃を加えて気絶させ、彼の体はバタンと彼の前に倒れました。
–良いものをお願いしました…
レビルは店員を捜索した結果、銃の代わりに喘息患者が使用する通常の吸入器を発見した。彼はまた、同社の研究所部門へのアクセスカードも発見した。とても幸運な発見でした
ね。トキシック・ブラザーズ・ギャングは、違法薬物の積荷を受け取るために彼を送り込んだ。エンドフォミラ。しかし、レビルは兄弟たちのことや彼らの毒性など気にしていなかった、彼は別の理由でここにいたのである–幸運のチケットを引くつもりだった
エレベーターのドアが開き、シュストリヤクは地図に示されている階を選択しました。 42番目。エレベーターはゆっくりと動きました。レビルは研究所部門で何をするかを考えていました。彼は、高度なセキュリティ システム、インテリジェントな本人確認システム、脳波分析などについて認識していました。

Revil by Inc
Revil by Inc

ここにいるのは彼だけではありませんでした。ローリアン社の従業員が彼がシステム障害を引き起こすのを手伝うことに同意したため、レビルは計画を実行するのに 10 分かかることになりました。
33階でエレベーターが止まり、レビルの頭上でドスンという大きな音が聞こえた。エレベーターの屋上に何かが衝突して着陸
しました。機敏な彼はピストルに手を伸ばしたが、その瞬間、金属製の触手がエレベーターの屋根を突き破った。彼らは彼を絡め取り、軋むような音が聞こえ、エレベーターの屋根が外側に向きを変えた。少女の顔が穴を通して彼を見つめた、–冷たく虚ろな目、顔の床には赤いインジケーターが点滅する金属板があり、意図的に皮膚の下に隠されていません
。–死ぬ前にここに来た理由を教えて
ください。敏捷な彼は動くことができず、鋼鉄の触手にどんどん締め付けられ、やがて息もできなくなってしまう
。–私は正当に私に属するものを求めてやって来たのです。
少女の顔には満足そうな笑みが浮かんだ。インジケーターが緑と赤に交互に点滅しました。

自分を失う

“すべてをマスターすることはできません” –こういうフレーズはいつも笑わせてくれる。誰もがこの専門化の罠に陥ってしまいます。ユーザー、プログラマー、上司、顧客。 「Microsoft/Apple/Google のようにしたいのですが」、「ロシア製の iPhone を作ってみませんか?」、「なぜそうではないのですか?」 Word /uber/photoshop とは異なりますか?” – IT に何らかの形で関わっている人なら誰でも、これらのフレーズを聞いたことがあるでしょう。さまざまな人々の口から繰り返されるこれらのフレーズは、さらに面白く聞こえます。

読者に質問します –なぜ別の言葉が必要なのでしょうか?なぜ別の Uber が必要なのでしょうか?なぜ別の Photoshop が必要なのでしょうか?なぜ「iPhone のようにする」必要があるのですか?
なぜ 1 社だけのインターフェースやアプローチに縛られるのでしょうか?なぜ Apple/Google/Microsoft 製品のみのファンであると自分自身にレッテルを貼るのですか?問題を解決するための別のアプローチに心を開かないのはなぜですか?なぜもっと生産性を高めたいと思わないのでしょうか?

多くの Microsoft ユーザーは、全員が Windows 10 にアップグレードする必要があるという同社の決定を気に入らなかった。人々は iPhone の不便なインターフェース、アップデート中のシステムクラッシュ、不必要なデザインの変更を批判しているが、依然として使い続けている彼らはそれにとても慣れていて、「iPhone」を持っているからです。現代社会でも地位を確立しています。

Microsoft、Apple、Google が自社の製品を使い続ける代わりに自分の子供を手放すように求められた場合、人々はこれらの製品への愛着が強いため、簡単に子供を手放すだろうと思われることがあります。< /p>

それらにならないで、1 つの製品に執着せず、​​代替オプションを検討してください。かつて私は、Microsoft Excel 上のインターフェースを備えた不動産業者向けのシステムを開発するオファーを受けました。また、Microsoft PowerPoint 上の「インタラクティブ ホワイトボード」システムを開発するオファーもありました。特にマイクロソフトにその理由を尋ねると、彼らは「慣れている」と答え、これらの企業がマイクロソフトからソフトウェアのライセンスを取得しているかどうかを尋ねると、必要に応じて「提供する」と言い、はぐらかした。そうすれば彼らはそれを買うでしょう。

読者の皆さん、IT 世界のさまざまな側面について、少なくとも簡単に勉強することをお勧めします。これまで Microsoft Windows のみを使用してきた場合は、Apple OS X または Linux を試してください。 iPhone のみを使用している場合は、最新バージョンの Android を少なくとも 1 週間使用してみてください。たった一社の側に傾き、他社の製品から心を閉ざした瞬間、その瞬間、あなたは自分を見失ってしまいます。彼自身は、自分が望むものを自分で決定できる人であり、特定の問題を解決するための最も便利で生産的なツールを選択できる人です。

1 つのプラットフォームのみのプログラマー –これは私個人にとって、そしておそらく IT 業界全体にとっても頭痛の種です。 *.doc または *.pdf にのみエクスポートするアプリケーションを作成する開発者、1 つの時代遅れの商用データベース (IBM Informix や神は Firebird など) のみに関連付けられている開発者、1 種類のハードウェア (これらすべて) にのみ関連付けられている開発者Android 上の x86 では動作しないプログラムなど)、もちろん「慣れている」ことは理解していますが、皆さん、今は変える時期です。

私の仕事では、あまり普及していないものの、非常に便利なツールをよく使用します。例の 1 つは – 3G 経由で高速ダウンロードして iPad に出力するには、解像度を下げて約 100 枚の写真を圧縮する必要がありました。その日、私は最も典型的なフレーズの 1 つを聞きました。– “*Photoshop* ですべての写真を手動で目的の形式に変換する必要があります”。彼女は私には面白く見えたので…私は、神の僕のように手動でこれら 100 枚の写真すべてを Photoshop でやり直すか、組み込みのメカニズムを通じて自動化しようとする人を想像しました。ここで重要なのは、まさにその人が Photoshop に執着しすぎて、ImageMagick のような無料でオープンなツール セットの存在を疑うことさえしなかったということです。 ImageMagick を使用すると、ベクター イメージやラスター イメージを使用してさまざまな作業を行うことができます。これには、5 分間で 100 枚のイメージの問題を解決するのに最適です。

特定の企業の奴隷にならないように、すべてをマスターし、勉強し、挑戦してください。

マッドレーサーの作り方

読者の皆様、こんにちは。このノートでは、Android 用の最初のゲームを作成した私の経験について説明します。携帯電話。この物語が好きな人はたくさんいるので、出版されるべきだと思います。これは成功事例ではありませんが、多くの初心者開発者にとって、簡単なゲームを作成するためにどこから始めるべきか、何をする必要があるかを理解できるようになると思います。私の間違いやもっと良くできた点については必ず説明します。

Hewl-Tanky

許してくださいジェイミー ヒューレットとアラン マーティン、素晴らしいアートを投稿しています戦車少女の許可なく

時々、誰もが息を呑んで口を開けて「すごいね」と言われるような何かを作りたいという状態に陥ることがあります。この話は、2011 年に映画「タンク ガール」からの抜粋を観たときに起こりました。コミックスタイルのアーケードゲームを作成するというアイデアを思いつきました。
なぜ iOS ではなく Android なのでしょうか?理由は単純です–私は Macintosh も iPhone も持っていませんでしたが、携帯電話で Linux をサポートしたいという強い願望がありました。当時、私は FSF イデオロギーが好きで、リチャード マシュー ストールマンが私の神でした。


Linux ハッカーの歌。歌う前に –世界平和を信じます

開発当時、Android の最新バージョンは 2.0 でしたが、1.6 のユーザーが多かったため、古いバージョンのサポートも残す必要がありました。多くの携帯電話メーカーはバージョン 2.0 へのアップデートさえリリースしていませんでした。

私はすぐにこのプロジェクトの実施期間を設定しました。– 1ヶ月。この間、私は Java の知識を向上させ、Android SDK や Eclipse を勉強し、OpenGL ES という怪物に直面してテストする必要がありました。グラフィックス面では、携帯電話向けに最適化された 3D モデルを 6 つほど作成する必要がありました。また、Android マーケット (当時 Google Play と呼ばれていました) でゴールドのプロジェクトをリリースする必要もありました)

jpct_logo
jPCT-AE бесплатный 3д движок для Андроида

時間がなかったので、既製の 3D エンジンを選択する必要がありました。独自のエンジンを最初から作成することも可能ですが、テストとすべてのデバイスとの互換性にはほとんどの時間がかかるため、あまり生産的ではありません。 Unreal Engine、Unity、ThreeJS (HTML5) が登場するまで、主要なエンジンは JPCT-AE でした。このエンジンは既製の Java ライブラリとして提供され、古いバージョンの Android をサポートしていました。また、その作成者である EgonOlsen は、開発者の要求に応じてサポートとバグ修正を迅速に提供します。

antonHooligan

人事がすべてを決定します –フーリガンのアントンは、ゲームの音楽を書くことに同意しました。私は常に彼の創造性を賞賛してきました。彼の作品はゲームプレイ全体を動かす機関車として機能し、ユーザーは最後のヘリコプターが墜落するまでプレイする必要がありました。

やることがたくさんありますが、どこから始めればよいでしょうか? Android SDK をインストールすることから始める必要があります。組み込みの IDE – が付属するようになりました。アンドロイドスタジオ。ただし、当時は IDE と SDK が別々に提供されていました。 Google Web サイトのドキュメントに従って、Android SDK と Eclipse をインストールしました。 Android エミュレータのアセンブリと起動を確実にするために、Eclipse に必要なパッケージもインストールされました。 1 時間後、テスト プロジェクト jpct-AE を組み立てました。

すごい!しかし、電話エミュレータではすべてが非常に遅かったです。したがって、Android プラットフォームの携帯電話を購入することが決定されました。これらの目的のために、LG Optimus One P500 を購入しました。それ以来、私は Symbian プラットフォーム上の優れた Nokia プッシュボタン電話機を使用していません) 電話機を Linux に接続する際に問題が発生しました。まだ問題が発生している場合は、udev 設定を確認してください。


ジョブズはパブロ・ピカソの言葉を引用

エイリアン ランナーを見て、エイリアンをバイクとバズーカを持った 2 人のパンクに置き換えることができ、周囲の空き地を大都市に変え、霧を変えることができることに気づきました。アイアン・メイデンのバラードの夜に置き換えられます。

3D モデルを作成するにはどうすればよいですか?はい、とても簡単です。Youtube でローポリモデルの作成に関するレッスンを開いて実行します。プロセス全体は、3D エディターで投影のアウトラインを作成することで構成されていました。アパッチヘリコプターの図面を見つけて、ヘリコプターの模型を作りました。テクスチャは米軍のオープン ソースから取得されました。

McDONNELL_DOUGLAS_AH-64_APACHE

2 人のパンクとバズーカが登場するゲームに、なぜヘリコプターが必要なのでしょうか?プロトタイプをプレイしたとき、プレイヤーはただ立っているだけでポイントを獲得できることに気づきました。理想的な解決策は、ヘリコプターが飛んできて、プレイヤーを停止させずに潜水艦魚雷を発射することでした。

当時のモバイル アプリケーションやゲームでは、携帯電話自体と RAM の両方でメモリ不足の問題が深刻でした。パフォーマンスも素晴らしかったです。周波数 300 ~ 500 MHz の ARM プロセッサ 1 つ。友人の携帯電話でテストした結果、HTCのビデオメモリはLGの半分の8MBと4MBで、そのためゲームがメモリ制限を超えて起動しなかったことが判明した。すべてのリソースは、1 秒あたり 30 フレームのフレーム レートと、ほぼすべてのもので実行できる程度まで圧縮されました。


繰り返さないでください。

Alien Runner は画面をタップすることで制御されました。このような制御は私には不便だったので、加速度センサーを使った制御を実装しました。つまり、電話の電源を切ります –バイクが曲がります。とても気に入ったので、勇敢な人のために一人称視点も追加しました。

ゲーム内で前方のブラックアウトが消えつつあることに気づき、jpct-AE エンジンの開発者からのサポートが必要になりました。これは、アプリケーションを最小化および最大化した後に発生しました。 jpct-AE フォーラムにトピックを作成したところ、2 日以内に問題は解決されました。修正されたバージョンのエンジンをゲームに統合しました。

無限に供給されるマシンをどのように実装するかという問題もありました。モバイル ゲームの場合、ゲーム シーンに車を迅速に追加する方法を考える必要がありました。低速メモリまたは SD カードからロードするオプションはすぐに拒否されました。そこで役に立ったのが、オブジェクト プーリングと呼ばれる設計パターンです。車が見えなくなったり破壊されたりしたとき、車の電源が切られ、新しい車をシーンの先頭に持ってくる必要がある瞬間に、その後、電源がオンになってそこに配置されました。

android-market

さて、発売日がやってきました。このゲームはテストされ、友人にプレビューされ、今では Android マーケットでゴールドになろうとしていました。 Android マーケットへの登録には 20 ドルかかります (有料)。説明とスクリーンショットを追加しました。そしてその瞬間、ビデオを録画する必要があることに気づきました。

モバイル プロジェクトのビデオを録画するにはどうすればよいですか?携帯電話で撮影して投稿することは本当に可能ですか?この解決策は興味深いもので、Android エミュレータを使用し、1 秒あたり 2 フレームのフレーム レートでゲームをプレイし、gtkDesktopRecorder などと呼ばれるプログラムを使用して画面上で起こったことすべてを記録しました。 VirtualDub を使用すると、ビデオ速度が 30 フレーム/秒に増加しました。次に、最高のビデオ編集プログラムを使用します。 Windows ムービー メーカー ゲームのサウンドと音楽をすべて追加しました。

ここでエラーが発生します。プロジェクトの推進には、労力も資金も何も投資されませんでした。そして私はこのプロジェクトは必ずやり返せると信じていました。ゲームはゴールドになり、jpct-AE フォーラムに Mad Racer に関するスレッドを作成しました。 2 週間で 1 ドルで 12 回インストールされました。 そして、その翌日には、多数の Warez サイトでゲームが無料で入手できることを発見しました

FSF の歌を歌う “ソフトウェアを共有する”広告付きの無料版を作成することにしました。ゲームは AdWare カテゴリに転送され、AdMob ネットワークの広告バナーが下に表示されました。広告システムとの統合はスムーズに進みました。 1 か月以内に、このゲームは 1 万台のデバイスにインストールされました。広告ネットワークから 50 ドルを受け取りました。

一般に、広告を忘れないでください。これはプロジェクトの主な経費の 1 つであるべきだと私は考えています。

良い面としては、市内の最高の企業の 1 つで iOS 開発者としてのポジションを得たことに注目したいと思います。そしてもちろん、貴重な経験です。

madracerLogoСсылка на Google Play

記事が気に入ったら、VKontakte、Facebook に再投稿してください)