プロが教える店舗&オフィスのセキュリティ対策術

ホワイトハッカーを目指そうかと思っています。老後もできるかなと思いまして。
似た感じであるかとおもう質問を見たりして、C言語をやっておいたほうがいいということですが難解です。
その前にやっておいたほうがよいことなど教えてもらえないでしょうか。

宜しくお願いいたします。

質問者からの補足コメント

  • できるところまで勉強して、専門学校へ行こうかとも思っています。

      補足日時:2023/07/29 22:17

A 回答 (6件)

> そうなんですね、C言語は…。

ちょっとほっとしました、先は長いとは思いますが。

うん、取り敢えずは止めておいた方がいいでしょう。
ちょっと話が難しくはなるんだけど、要は日本産業規格(JIS)で定義されている「C言語」をキチンと教えてる本ってのが一冊もないんですよ(そしてWebサイトも無い)。
むしろ、「他の言語でプログラミングが出来るようになってから」仕様を読んだ方がマシだろ、ってのがあるんです。

あと、「無料Web文書」をまずは勧めてる理由は、本当に「プログラミング初学者向け」の良い書籍が一般には全く存在しない、って言って良い程「無い」からです。
知ってる限り、日本で書かれた「良いプログラミング入門書」ってのは次の本しか知りません。

プログラミングの基礎:
http://pllab.is.ocha.ac.jp/~asai/book/Top.html

これは実際に「お茶の水女子大学」の方でプログラミング入門講座に使われてた実績があって、「一つの実際に動くプログラム」を最終的に完成させる目標で書かれてて非常に良い。
著者によるビデオ講座もあって分かりやすいんだけど・・・。

「プログラミングの基礎」を使った授業紹介:
http://pllab.is.ocha.ac.jp/~asai/book-mov/

ただ、難点が一つあって、しかもそれが最大の難点だ。
この書籍、OCamlと言うプログラミング言語を使ってるんですが、

OCaml:
http://ocaml.jp/

これのWindowsへのインストールがムズいんですよ。

インストール方法:
http://ocaml.jp/?%E3%82%A4%E3%83%B3%E3%82%B9%E3% …

MacやUNIX系OSなら「アッサリと」使えても「一番使用者が多い」Windowsで使えるように設定するのがムズい、ってぇんでやっぱRuby + 無料Web文書の方がいいだろうな、と。
また、Microsoftが提供してるF#と言うプログラミング言語はこのOCamlをベースにして作ってるんだけど、「完全互換ではない」って辺りで書籍を使って学ぶのはどうかな、ってのも不安に思う理由です。

F#とは:
https://learn.microsoft.com/ja-jp/dotnet/fsharp/ …

また、C言語みたいに「システムプログラミング」向けの言語を学びたい、と言った場合、現在だとCを直接学ぶよりはRustと言う新しい言語の方が世界的には勢いがあるんで、Cをいずれ学ぶにせよ、先にRustを学んでた方がマギレが無いんじゃないのかな、とは思います。

Rustプログラミング言語:
https://www.rust-lang.org/ja

もちろん、これもWindowsへのインストールにちと難がありそうなんで、「今すぐ学ぶ」んじゃなくって、Ruby辺りでまずは「プログラミングに慣れて」からの後の候補として考えた方が良い、って事です。
Web上での入門書も完備してるんで、それを使って学べます(これもヘタに本を買うよか良い)。

The Rust Programming Language 日本語版:
https://doc.rust-jp.rs/book-ja/

まぁ、あくまで「候補」です。「これをやりなさい」ってわけじゃない。
いずれにせよ、「最初に良いプログラミング入門を行えば」、その後の選択肢は広くなる。
あとはアナタ次第だし、「最初のハードル」さえクリア出来たら、既に「知見を備えた」って意味なんで、色々と自分の趣味で言語を選ぶ事は可能となるでしょう。

> ご紹介いただいたサイトを見てみようと思います!

見てみてください。
頑張ってくださいね。
    • good
    • 0
この回答へのお礼

お忙しいところ、ありがとうございます。ご紹介いただいたサイトを今、丁度見ていたところです。こまやかに丁寧に教えていただいて、涙が出そうです。言葉がありませんが、がんばります!

お礼日時:2023/07/29 23:54

>>C言語をやっておいたほうがいいということですが難解です。



ハッカーを目指すなら、C言語のマスターは必須ですよ。
他の言語を学ぶのは、さしあたり不要ですが、ハッカーとしては、Perl言語を学んでおくのがいいかもしれません。
C言語がそれなりに分かったなら、CPUは何でもいいのですが、アセンブラーもマスターしましょう。
そして、OSとして、Windowsだけでなく、Linuxの習得も必須です。
    • good
    • 0
この回答へのお礼

ありがとうございます。またまた目標ができました!ありがたいです!

お礼日時:2023/07/29 23:24

メモリ管理を理解するにはC言語の習得が一つの手段ですが、ハッキング手法としては力業のバッファオーバーフロー系アタックに対する理解に過ぎません。


システムへの攻撃(への対処)全般を学びたいのであればUNIXコマンド全般の学習が大事です。これはlinuxを自分のPCにインストールしてGUIを使わずにコマンドでいろいろ操作していればある程度は覚えます。権限管理とファイル管理がコマンドラインでできるようになることが最初の目安ですね。
それができるようになれば「侵入」さえできればやりたい放題できます。
そして侵入のための力業としてオーバーフロー系のアタックが必要なわけです。
やっちゃだめよ。
    • good
    • 0
この回答へのお礼

お礼が遅くなり申し訳ありません。
まだまだわからないのですが、がんばります。ありがとうございます!

お礼日時:2023/07/30 23:08

> C言語をやっておいたほうがいいということですが



誰がそれを言ったかは知りませんが、「ハッカーになりたい」と言うのと「Cハッカーになりたい」と言うのは全く関係がないです。
むしろ、C言語は「マトモな入門書が一冊もない」です。
かなり、言っちゃえば、「他の言語に精通しないと」C言語には手を出さない方がいい。
C言語をヘタに学んでも「おかしなプログラミングのクセしか付かない」ってのがむしろ現実です。

> 老後もできるかなと思いまして

だったら尚更、「時間がある」のを前提として、C言語を「まずは避けてから」フツーのプログラミング言語を使ったプログラミング法を学びましょう。

推薦するプログラミング言語はRubyです。「Rubyが良い言語」だから推薦してるのではなく、「無料で読める良い入門用Web資料がある」ってのがその理由です。

プログラミング入門 - Rubyを使って - :
https://ie.u-ryukyu.ac.jp/~kono/software/s04/tut …

繰り返しますが、Rubyはパワフルな言語ですが「それを使い続けなさい」って意味じゃないです。
もちろんRubyを使い続けてもいいけど、そうじゃなくって、「入門用の良い無料の資料があるかどうか」ってのが重要なんです。
本を買う場合でも「入門用の良い書籍があるかどうか」が重要で、言っちゃえば「どの言語を選ぶのか」と言うのはさして重要な問題じゃないんです。
そして、繰り返すけど「C言語入門」の類の本は、知ってる限り、「マトモな入門書は一冊もありません」。

あと、ハッカーを目指すならこの文書は読んでた方がいいでしょう。

ハッカーになろう:
https://cruel.org/freeware/hacker.html
    • good
    • 0
この回答へのお礼

お忙しいところ、ありがとうございます。そうなんですね、C言語は…。ちょっとほっとしました、先は長いとは思いますが。ご紹介いただいたサイトを見てみようと思います!

お礼日時:2023/07/29 22:57

C言語が難解というようでは先は長いと思います。


恐らくポインタとか構造体とかその辺で引っかかってるんだと思いますが。
まずはCPUのアーキテクチャとかメモリ管理とかが理解できていないとC言語で扱うメモリ管理も理解できないのでそこからでしょうね。
    • good
    • 0
この回答へのお礼

ありがとうございます。これからC言語の本を探そうと思っているところでした。ふとこちらで念のため聞いてみようとおもいました。長期での習得を考えています。

お礼日時:2023/07/29 22:37

>その前にやっておいたほうがよいこと


ホワイトハッカーとは何か?を
理解することですね。
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2023/07/29 22:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A