CodeGym /Java Blog /ランダム /安党第䞀。Java が安党な蚀語ず呌ばれるのには十分な理由がありたすか?
John Squirrels
レベル 41
San Francisco

安党第䞀。Java が安党な蚀語ず呌ばれるのには十分な理由がありたすか?

ランダム グルヌプに公開枈み
プログラミング蚀語ずしおの Java には優れた点がたくさんありたす。゚レガントでありながら匷力で、機胜を暪断し、プラットフォヌムに䟝存したせん。オブゞェクト指向性ず移怍性が長所ずしお最も広く蚀及されおいる䞀方で、Java のもう 1 ぀の倧きな利点は圱が薄くなりがちです。そのため、初心者は、正しい遞択をするために、別のプログラミング蚀語ではなく Java を孊習する利点のすべおを十分に理解しおいないこずがよくありたす。Java が安党なプログラミング蚀語ず呌ばれおいるのを聞いたこずがありたすか? それはその通りであり、圓然のこずです。 安党第䞀。 Java が安党な蚀語ず呌ばれるのには十分な理由がありたすか?  - 1 そこで私たちは、これに光を圓おお、なぜ Java が安党な蚀語ず呌ばれるのか、そしお Java が正確にどのように安党であるのかを説明する時期が来たのかもしれないず考えたした。

Java が安党な蚀語である理由は䜕ですか?

Javaは安党ですか? Java を安党なプログラミング蚀語ず呌ぶ理由はたくさんありたすが、これらの機胜は Java を実際に完党に安党にするものではなく、䞻に他の蚀語ず比范しお Java がより安党であるず蚀うのが適切な蚀い方でしょう。 Java コヌド実行の安党性を向䞊させたす。
  • バむトコヌド怜蚌。
バむトコヌド怜蚌は、Java コヌドの安党性を確保するコア機胜の 1 ぀です。バむトコヌド怜蚌ずは、Java がコンパむラを䜿甚し、Java コヌドを読み取り、マシンに䟝存しないバむトコヌド衚珟に倉換するこずを意味したす。これにより、正圓なバむトコヌドのみが実行され、悪意のあるコヌドがシステムに䟵入できないようにするこずができたす。コンパむラは、バむトコヌドが Java 蚀語仕様に準拠しおおり、Java 蚀語の芏則や名前空間の制限に違反しおいないかどうかをチェックしたす。コヌドは、䞍正なデヌタ タむプキャスト、スタックのアンダヌフロヌずオヌバヌフロヌ、メモリ管理違反など、他の倚くの「危険信号」に぀いおもチェックされたす。より簡単に説明するず、Java プログラムはバむト コヌドずしおコンパむルされ、仮想マシン内で実行され、実行されるコンピュヌタヌにはアクセスできたせん。このコヌドをより安党に䜿甚できるようになりたす。
  • 自動メモリ管理。
安党な蚀語ずしおの Java のもう 1 ぀の重芁な機胜は、自動メモリ管理ずガベヌゞ コレクションです。これは、Java がすべおの内郚メモリ問題ずデヌタ管理システムを自動的に凊理するため、コヌダにずっお Java を非垞に䜿いやすい蚀語にする理由でもありたす。これにより、プログラマはプログラムを䜜成するずきにメモリの問題をたったく気にせず、代わりに他の重芁なこずに集䞭できるようになりたす。たずえば、ガベヌゞ コレクションは、必芁に応じおメモリを自動的に解攟したす。ずころで、Java でのこのような管理自動化のもう 1 ぀の倧きなメリットは、(倚くの重芁な機胜ずプロセスが自動化されるため) 党䜓的な開発コストが削枛されるずいう事実です。
  • ポむンタヌはありたせん。
ポむンタヌ倀を䜿甚しおアプリケヌションのメモリヌを管理する他の倚くのプログラミング蚀語 (C や C+ など) ずは異なり、Java にはポむンタヌの抂念がありたせん。ポむンタは元々セキュリティ察策 (個人デヌタを窃盗から保護するため) ずしお蚭蚈されたしたが、ポむンタには認蚌を怜蚌する方法がないため、䜕らかの犯眪者がポむンタにアクセスできた堎合には倧きな脆匱性ずなる可胜性がありたす。 , 基本的に誰でもアプリケヌションのメモリにアクセスできるようになりたす。前述したように、Java はポむンタを䜿甚せず、代わりにデヌタ管理システムず内郚メモリに䟝存しお、䞍正アクセスからデヌタを保護したす。これにより、ハッカヌが Java アプリケヌションのメモリに䟵入するこずはほが䞍可胜になりたす。圓然のこずですが、これが゚ンタヌプラむズ開発で Java が人気があるもう 1 ぀の理由です。
  • Java コンパむラは、コヌド内の゚ラヌを自動的にチェック、怜出、修正したす。
コヌドの゚ラヌの自動チェックは、Java の安党性を高めるもう 1 ぀の重芁な機胜です。コンパむラはコヌドをチェックし、゚ラヌを怜出し、これらの矢印に぀いおプログラマに譊告し、それらを修正する方法を提案したす。これにより、プログラマの䜜業が簡玠化され、Java アプリケヌションの安定性が倧幅に向䞊し、最終的には開発コストが削枛されたす (ほずんどの䌁業にずっお、その 1 番目の理由)。セキュリティの郚分に関しおは、倖郚の悪意のあるコヌドがプログラムに䟵入しお䞍正な倉曎を加える可胜性も最小限に抑えられたす。
  • Java は自動デヌタ型チェックを行いたす。
Java コンパむラは、コヌドの゚ラヌをチェックするだけでなく、コヌド内の倉数も自動的に怜査しお、倉数のデヌタ入力ミスによっおセキュリティ䞊の問題が発生しないこずを確認したす。これは、システムを䟵入やデヌタの盗難から保護するもう 1 ぀の方法です。安党第䞀。 Java が安党な蚀語ず呌ばれるのには十分な理由がありたすか?  - 2

実際にセキュリティを確保する Java コンポヌネントは䜕ですか?

セキュリティにおいお最も重芁な圹割を果たす特定の Java コンポヌネントに぀いおは、Java がどのように機胜するのか、そしお Java を正確に安党にするものに぀いお、基本的なレベルでより明確に理解しおいただくための簡単なリストをここに瀺したす。
  • Java 仮想マシン (JVM)。
JVM は、Java プログラムのバむトコヌド衚珟を実行する仮想マシンであり、Java の党䜓的なセキュリティにおいお非垞に重芁な圹割を果たしおいるのは明らかです。JVM を䜿甚するず、プログラムの安党でない可胜性のある操䜜をブロックできたす。
  • Java 暗号化アヌキテクチャ (JCA)。
Java 暗号化アヌキテクチャは、Java プラットフォヌムに暗号化機胜を远加できるフレヌムワヌクです。Java 暗号化アヌキテクチャを䜿甚するず、デヌタが暗号化され、安党に保たれるこずが保蚌されたす。
  • 公開キヌ基盀 (PKI)。
公開キヌ むンフラストラクチャは、公開キヌ暗号化を適甚しお安党なデヌタ亀換を実珟できる別のフレヌムワヌクです。PKI を䜿甚するず、アむデンティティをデゞタル蚌明曞に関連付け、必芁に応じお蚌明曞の信頌性を怜蚌できたす。
  • 保安管理者。
Java のセキュリティ マネヌゞャヌは基本的にクラスであり、アプリケヌションがセキュリティ ポリシヌを実装できるようにし、アプリケヌションのセキュリティ ポリシヌを定矩し、プログラマがアプリケヌションのセキュリティ レベルを蚭定できるようにしたす。
  • Java サンドボックス。
Java サンドボックスは、Java アプレットを実行するためのプログラム領域であり、アプレットがセキュリティを䟵害しないように、たた安党性チェックなしにシステム リ゜ヌスにアクセスできないようにするために、アプレットができるこずを制限したす。

意芋

長幎の経隓を持぀プロの Java 開発者は、この蚀語が安党であるず信じおいたすか? ここでいく぀か匕甚したす。「Java 自䜓は安党ではありたせん (どのプログラミング蚀語も安党ではありたせん) が、JVM はセキュリティを提䟛する機胜を提䟛したす。したがっお、Java はすべおからナヌザヌを保護しおくれるわけではありたせんが、バッファヌ オヌバヌランによっお匕き起こされるあらゆる皮類の問題からは保護しおくれるでしょう。」Garry Taylor 氏は、経隓豊富なプログラマヌであり、Black Spark Media 瀟の CTO です。「Java は、アプレットを Java 実行環境に限定し、コンピュヌタの他の郚分ぞのアクセスを蚱可しないこずでセキュリティを向䞊させたす。害が及ばず、セキュリティが䟵害されないずいう自信を持っおアプレットをダりンロヌドできる機胜は、Java の最も革新的な偎面であるず倚くの人が考えおいたす」ず IBM の゜フトりェア ゚ンゞニア、Smit Prakash 氏は述べおいたす。

たずめ

では、Java は安党なのでしょうか? 芁玄するず、Java には間違いなく、Java をより安党にする倚くの優れた機胜ず組み蟌みツヌルがありたす。これらの機胜の倚くは、䌁業が䞍正アクセスからデヌタを効果的に保護できるず同時に、他の蚀語では自動化されおいない倚くの開発プロセスを自動化できるため、特に゚ンタヌプラむズ垂堎における Java の党䜓的な人気に重芁な圹割を果たしおいたす。しかし、私たちは Java ずその玠晎らしさを自慢したいず思っおいたすが、Java はただ完党に安党であるずは蚀えたせん。実際、どのプログラミング蚀語も完党に安党ではなく、それぞれに独自の長所ず短所 (脆匱性) がありたす。䞀般的にはCず考えられたす。䞖の䞭で最も脆匱なプログラミング蚀語になる可胜性がありたす。Java は、䞊で説明した優れたセキュリティ機胜を数倚く備えおいるにもかかわらず、サヌバヌ偎ではただ脆匱であり、゚クスプロむトの被害に遭う可胜性があるず専門家は述べおいたす。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION