Daan-daang pinakamahusay na kapaki-pakinabang na open source na mga programa. Ano ang open source at bakit ito mahalaga para sa cryptocurrency at open blockchain

Upang maunawaan kung ano ang ibig sabihin para sa aming organisasyon na gumamit ng open/closed source software, kailangan naming maunawaan kung paano sila naiiba sa isa't isa. Itinuturo ng artikulong ito ang mga pangunahing pagkakaiba, ngunit tandaan na ito ay isang napakasimpleng paliwanag. Karagdagang impormasyon maaaring makuha mula sa Wikipedia o sa pamamagitan ng pagbabasa kongkretong mga halimbawa gamit ang parehong uri ng software.

Una sa lahat, ang open source software ay nangangahulugan na maaari nating baguhin at i-develop ang ating programa hangga't mayroon tayong kaalaman at kasanayan upang gawin ito. Sa kabaligtaran, imposibleng baguhin ang isang closed source program sa iyong sarili, dahil pinagmulan mga programa/aplikasyon ay hindi magagamit. Bagama't hindi lahat sa atin ay mga programmer, maaari pa rin tayong makinabang sa paggamit ng software open source.

Ang nasabing software ay ibinibigay sa mga gumagamit nang walang bayad, hindi lamang mga programa, kundi pati na rin ang mga operating system. Ito ay nilikha at binuo ng mga gumagamit mismo, na nagpo-post ng kanilang mga nilikha sa Internet. Karamihan mga sikat na programa ay regular na ina-update dahil napakaraming tao ang gumagamit nito. Ang isang halimbawa ay Mozilla Firefox o Thunderbird. Kung ang programa ay hindi regular na na-update, maaaring walang sapat na kinakailangang teknikal na mapagkukunan para dito - ang buong tanong ay kung gaano karaming mga gumagamit ang programa. Mataas na dalas Ang mga update ay isang tiyak na garantiya ng kaligtasan ng paggamit ng programa. Bagaman, kung pagkatapos i-install ang pag-update ay lumalabas na ang programa ay hindi gumagana (halimbawa, sa isang bagong bersyon operating system ay hindi suportado ng Skype), mayroong dalawang paraan upang malutas ang problema: subukang maghanap ng tulong sa mga forum sa Internet o ayusin ang problema sa iyong sarili, na medyo mahirap.

Ang closed source software ay mas sikat kaysa sa open source software. Una sa lahat, dahil sa kadalian ng paggamit, at dahil nasanay na kami dito - bilang isang patakaran, ginagamit namin ang Windows OS sa paaralan, sa trabaho at sa bahay. Sa kaso ng mga programa at operating system batay sa closed source code, kami ay nakikitungo sa isang tapos na produkto na hindi nangangailangan ng anumang interbensyon sa aming bahagi. Ito ay mas maginhawa para sa karaniwang gumagamit na magtrabaho sa kanila. Ang mga gumagamit ng closed source software ay madalas na binibigyang-diin kung gaano kadali ang pag-install at paggamit, kung gaano kaginhawang magkaroon ng malinaw na tulong para sa programang nasa kamay, at ang kakayahang makipag-ugnayan sa serbisyo. teknikal na suporta sa kaso ng mga problema. Ang mga ganitong sistema at produkto ay inilabas ng mga kumpanya, at pagkatapos lamang ng ilang yugto ng pagsubok. Bumili lang ang user ng isang buong software package, handa nang i-install sa computer. Ang nasabing software ay binabayaran: bumibili kami ng lisensya, at madalas na mga update sa programa.

Sinusuportahan ng ilang software developer ang mga organisasyon ng komunidad at nag-aalok sa kanila ng software nang libre o may diskwento sa pamamagitan ng kani-kanilang mga non-profit na organisasyon, tulad ng kaakibat na network TechSoup, na ang mga miyembro ay matatagpuan sa iba't ibang bansa. Sa Russia, ang programa ay ipinatupad ng Greenhouse of Social Technologies (Spiro LLC). Sa pamamagitan ng pakikipag-ugnayan sa infoDonor program, malalaman mo kung ang iyong organisasyon ay maaaring lumahok sa programa. Dapat din nating tandaan na kapag pumipili tayo ng operating system, pinipili din natin ang paraan ng ating pagtatrabaho sa ating organisasyon. Halimbawa, kung pinili namin ang Linux, hindi namin magagamit Mga solusyon sa Adobe, at kung pipiliin namin ang Windows, kakailanganin naming bumili ng mga lisensya para sa bilang ng mga computer. Ang bawat kaso ay may mga kalamangan at kahinaan nito. Kailangan nating maingat na isaalang-alang kung ano ang eksaktong kailangan ng ating organisasyon, kung ano ang mga pamantayan epektibong paggamit kagamitan, at gumawa ng desisyon pagkatapos ng masusing pagsusuri.

Siyempre, ang open o closed source na software ay hindi lang tungkol sa Microsoft, Mac, o Linux. Ang isyu ng paglilisensya ay lumalabas na may kaugnayan sa anumang uri ng software na ginagamit sa isang organisasyon. Ang pangunahing tuntunin ay maingat na basahin ang lahat ng mga lisensya at kasunduan sa serbisyo. Mayroong maraming mga halimbawa kung saan ang mga organisasyon ay nakatagpo ng mga seryosong problema sa software na halos walang silbi dahil sa mga kundisyon sa paglilisensya, o kung saan kahit na ang pinakamaliit na pagbabago sa isang site ay napakamahal.


Karamihan sa software na ginamit ay ipinamamahagi sa compiled form. Iminumungkahi nito na ang source code ng naturang mga programa ay dumadaan sa isang espesyal na compiler, na nagko-convert nito sa wika naiintindihan ng computer. Sa turn, software na gumagamit open source, ay ganap na kabaligtaran.

Ang nasabing code, bilang panuntunan, ay ipinamamahagi kasama ang pinagsama-samang bersyon ng programa, na ginagawang posible na baguhin o pagbutihin ito sa bawat posibleng paraan upang maisagawa ang mas malawak na hanay ng mga gawain. Naniniwala ang mga developer ng naturang mga programa na sa paglipas ng panahon ay papayagan ang open source code produkto ng software maging mas kapaki-pakinabang at iligtas siya sa maraming pagkakamali.

Mayroong ilang mga pamantayan sa pagiging karapat-dapat para sa mga open source na programa:

  • libreng pamamahagi software package, gayunpaman, sa parehong oras maaari itong maging bahagi ng isang komersyal na proyekto;
  • ipinag-uutos na attachment ng source code;
  • ang kakayahang i-edit ng sinuman ang source code;
  • ang kakayahang ipamahagi ang mga binagong bersyon ng mga programa;
  • Dapat ay walang kinakailangan upang ibukod ang iba pang software o makagambala sa pagpapatakbo nito.

Tingnan natin ang isa sa mga pinakakapansin-pansin na halimbawa ng software na kasama ng open source code at nakakuha ng pandaigdigang pamamahagi. Noong unang bahagi ng 90s ng huling siglo, ang estudyanteng Finnish na si Linus Torvalds ay bumuo ng isang ganap na bagong operating system batay sa Unix, na kilala ngayon bilang Linux. Ang sistema ay inilabas sa ilalim kasunduan sa Lisensya GNU General Public License, na naglalaman ng isang open source na kahulugan na may legal na punto pangitain. Medyo isang malaking bilang ng mga programmer ang nagsimulang gumamit at mapabuti ang operating system na ito. Ang pagkakaroon ng nakolektang mga pagpapabuti mula sa mga programmer sa buong mundo sa isang solong kabuuan, noong 1994 ay inilabas ni Linus Torvalds ang bersyon ng Linux 1.0. Bago ito, isinagawa ang pagnunumero ng bersyon simula sa zero.

Sa paglipas ng panahon, ang isang tiyak na pangkalahatang alalahanin sa mga mamimili ay lumitaw tungkol sa kakulangan ng warranty, pati na rin ang teknikal na suporta para sa naturang software. Samakatuwid ang kumpanya pulang sumbrero Lumilikha ang software ng opisyal na pakete ng software ng Red Hat Linux, na pinamamahalaan nilang ibenta. Ang pinaka makabuluhang tampok ng naturang marketed operating system ay pagkakaroon ng warranty at teknikal na suporta, kung ano ang hindi gaanong mahalaga.

Ang ilang iba pang mga kumpanya ay gumagawa din ng mga bagong bersyon ng Linux para sa pagbebenta, at ang mga paketeng ito ay Bukod pa rito ay nilagyan ng iba't ibang software, kung saan: Mozilla internet browser, nilikha sa kernel ng Netscape, Apache web server, wika para sa paghahanda ng mga web script Perl, graphic na format PNG na mga file at marami pang iba. Bilang karagdagan, may mga bersyon ng mga nakalistang software package na binuo para sa Windows at Android operating system. Iminumungkahi nito na ang mga open source na programa ay magagamit hindi lamang para sa mga computer, kundi pati na rin para sa mga mobile device.

Upang ibuod, ito ay nagkakahalaga ng pagsasabi na ang mga programa kung saan kasama Ang mga ito ay open source at may ilang mga disadvantages. Una sa lahat ito iba't ibang bersyon, bilang isang resulta kung saan ang pagbabago ng isang programa ay maaaring humantong sa paglikha ng isang bagong independiyenteng pakete ng software. Ang pangalawang bagay na dapat bigyang-diin ay Mga gumagamit na gumagamit ng hindi napapanahong mga programa, kung saan ang ilang mga error ay maaaring hindi maalis, hindi posible na gumana sa mga bagong format ng file, at iba pa. Ang isang halimbawa ng naturang kaso ay maaaring tawagan Mga programa sa Microsoft Salita at Bukas na opisina. Kung ang ilang kumplikadong pormula ay nakasulat sa unang pakete, kung gayon ang pangalawa ay hindi ito mababasa.

Gayundin sa mga open source software ay walang tinatawag na mga espesyal na pakete dinisenyo para sa accounting at pag-uulat. Ang isa pang disbentaha ay direktang nauugnay sa hardware, ang katotohanan ay kapag lumilipat mula sa Windows patungo sa Linux, kinakailangang isaalang-alang na ang mga driver ng Linux ay hindi umiiral para sa lahat ng mga modelo ng mga aparato sa computer, na magiging sanhi ng maling operasyon mga sistema.

Gayunpaman, huwag nating kalimutan ang tungkol sa positibong aspeto naturang software, dahil Ang open source ay maraming benepisyo. Una, lahat ng open source software ay ipinamamahagi libre. Pangalawa, ganyan minsan lumilitaw ang mga programa nang mas mabilis komersyal dahil sa katotohanan na ilang libong tao ang kasangkot sa pag-unlad nang sabay-sabay at hindi lahat ng kumpanya ay kayang magbayad para sa trabaho ng ilang libong programmer. Ang huling bagay na dapat tandaan ay alalahanin kakayahang mabilis na malutas ang mga pagkakamali, na ginagawang mas matatag ang mga open source program kaysa sa mga komersyal.

03/27/2015 | 02:24 Analytics

Kung may premyo para sa paglutas ng mga problemang kinakaharap ng seguridad ng mga open source system, mapupunta ito kay Werner Koch, ang developer ng Aleman na nagtrabaho sa nakalipas na 18 taon upang mapanatili ang haligi. open source ecosystem - GNU Privacy Guard (GnuPG).

Mula noong unang paglabas nito noong 1999, ang GnuPG ay naging isa sa pinakamalawak na ginagamit na open source na tool sa seguridad, na nagpoprotekta sa mga email ng lahat mula sa mga opisyal ng gobyerno hanggang kay Edward Snowden.

Gayunpaman, nahirapan si Koch na mabuhay mga nakaraang taon. Tinatayang nakalikom siya ng average na $25,000 sa taunang mga donasyon mula noong 2001, ngunit hindi ito naging sapat upang suportahan ang kanyang mga pagsisikap. Ayon sa Pro Publica, si Koch, 53, ay malapit nang huminto sa GnuPG, ngunit nang ang mga paghahayag ni Edward Snowden ay nagulat sa mundo, nagpasya si Koch na lumaban. "I'm too much of an idealist," sabi niya.

May happy ending ang story. Matapos lumabas ang kwento ng ProPublica, sumugod ang mga donor mula sa buong mundo upang suportahan si Koch. Madali niyang itinaas ang $137,000 na pinlano niyang suportahan ang trabaho, na nagpapahintulot sa kanya na kumuha ng part-time na developer. Si Koch ay ginawaran ng isang beses na grant na $60,000 mula sa Core Infrastructure Initiative ng Linux Foundation. Ang Facebook at online na kumpanya ng pagbabayad na si Stripe ay nangako ng $50,000 bawat taon sa proyekto ni Koch.

Ang mga underfunded na proyekto, tulad ng GnuPG ay hanggang kamakailan lamang, ay maraming open source na ecosystem. Malapad muling gamitin Nakakatulong ang open source na bawasan ang development, ngunit pinipigilan ito ng sobrang dami ng code na iyon na masuri para sa seguridad. Kamakailan lamang na nagsimula kaming makakita ng mga problema, madalas pagkatapos ng mga paglabag sa seguridad, na nagpilit sa industriya na kumilos.

Sumulat ako ng mga programa para sa pagkain

Ang mga kondisyon kung saan nagtrabaho si Koch sa loob ng maraming taon ay hindi karaniwan.

Matapos matuklasan ng mananaliksik ng Google na si Neil Mehta ang Heartbleed, isang seryoso at malayuang mapagsamantalang kahinaan sa bahagi ng OpenSSL, nabigla ang komunidad ng developer nang malaman na ang proyekto ay higit na responsibilidad ng tinatawag ni Jim Zemlin, executive director ng Linux Foundation, na "dalawang lalaki" nagngangalang Steve." Nag-ambag sina Dr. Stephen Henson at Steve Marquez ng part time para mapanatiling napapanahon ang code, na sinusuportahan ng ilang libong dolyar sa isang taon sa mga boluntaryong kontribusyon.

Ang mga nagtitinda ng teknolohiya na umaasa sa open source ay mabilis na pumasok at sinubukang linisin ang proyekto ng OpenSSL. Ang Core Infrastructure Initiative, na nagbigay sa creator ng GnuPG ng $60,000 grant, ay ginawa ilang buwan na ang nakalipas upang tumulong na pondohan ang trabaho ni Henson at iba pang mga proyekto ng OpenSSL. Ang suportang pinansyal ay ibinibigay ng mga higante ng Silicon Valley tulad ng Amazon, Adobe, Cisco, Facebook at Google.

Masyadong maraming nagluluto ang nakakasira ng sabaw

Ang Heartbleed ay hindi ang unang malubhang bug sa mga open source system. Halimbawa, ang kahinaan ng Apache Struts ay nauna dito ng halos isang taon, at hindi gaanong malala.

Gayunpaman, salamat sa hype ng media, maaaring tuluyan nang nasiraan ng Heartbleed ang sikat na kasabihan ni Eric Raymond tungkol sa kalidad ng open source software: "Sa sapat na mga mata, lahat ng mga bug ay nasa ibabaw." Karamihan sa mga eksperto sa seguridad ay nagsasabi na ang konsepto ay palaging higit na aspirasyon kaysa mapaglarawan.

"Hindi ko kailanman nagustuhan ang konsepto ng 'maraming mata,'" sabi ni Joshua Korman, punong opisyal ng teknolohiya ng Sonatype. "Dahil marami sa kanila ay hindi nangangahulugan na ang mga mata na iyon ay motibasyon o kwalipikadong maghanap ng mga kahinaan sa seguridad."

Ang "maraming mata" na diskarte sa open source ay higit na tinatakpan ang mga kahinaan ng open source ecosystem, na nagpapahiwatig ng isang kapaligiran ng patuloy na pagbabantay na hindi kailanman umiral, sabi ni Bill Weinberg, senior director ng open source na diskarte sa Black Duck Software.

"Sa Shellshock, maraming mga mata ang hindi nakatulong," sabi ni Weinberg, na binabanggit ang isang kritikal na kahinaan na natuklasan sa Bash code noong 2014. "Itinuring din na sinubukan ang code na ito, ngunit lumabas na walang nag-curate nito dahil ipinapalagay ng lahat na ito ay nasubok nang mabuti."

Bagama't maaari naming ipagpalagay na mataas ang integridad ng open source code, iba ang iminumungkahi ng data ng Sonatype. Ang pagsusuri ng kumpanya sa mga bahagi ng open source sa pinamamahalaang code nito ay natagpuan na ang mga kilalang kahinaan sa mga bahagi ng open source ay naayos lamang ng 41% ng oras, isinulat ni Corman. Para sa mga isyung naitama, ang average na oras upang malutas ay 390 araw.

Gayunpaman, mali ang pakikipag-usap tungkol sa open source nang hiwalay sa komersyal, pagmamay-ari na software. Bagama't magkahiwalay ang open source at proprietary software projects, karamihan modernong mga aplikasyon ay isang koleksyon ng mga bahagi ng software mga developer ng third party, marami sa mga ito ay open source na mga bahagi, sabi ni Corman.

Sulit na seryosohin ang seguridad sa antas ng code

Ano ang solusyon sa problema? Para sa mas mabuti o mas masahol pa, ang sagot ay higit sa lahat kultural, sabi ni Katie Mouzoris, punong opisyal ng patakaran sa HackerOne at isang dating senior security strategist sa Microsoft. “Dapat isipin natin in terms of security. Ito ay mahalaga para sa anumang software project - open source o hindi."

Nag-aalok ang Muzoris ng isang web platform para sa pag-coordinate ng pagbubunyag ng mga kahinaan, kabilang ang sa pamamagitan ng mga programa ng bug bounty. Sinabi niya na ang HackerOne ay nag-isponsor na ng mga bug sa isang malawak na hanay ng mga open source na proyekto, kabilang ang kasama ang PHP, Ruby on Rails, Python at OpenSSL, na nagbibigay ng kabayaran para sa pag-uulat ng kahinaan.

Ang mga open source na proyekto ay kailangang gumawa ng mas seryoso at sistematikong diskarte sa seguridad, sabi niya. "Dapat mong subukang pahusayin ang seguridad."

Ang Korman ng Sonatype ay nagtataguyod ng isang mas mahigpit na solusyon: ang paglikha ng isang supply chain na katulad ng ginagamit ng mga tagagawa, na tinitiyak mataas na kalidad at pananagutan.

Gamit ang pagkakatulad ng linya ng produksyon ng Ford, sinabi ni Corman na alam ng kumpanya ang pinagmulan ng bawat bahagi na napupunta sa isang tapos na kotse. Ang mga problema ay maaaring masubaybayan pabalik sa mga partikular na supplier, kagamitan at maging ang mga ikot ng produksyon.

SA modernong organisasyon para sa pagbuo ng software, gayunpaman, ang naturang sistema ay hindi umiiral. Halos lahat ng komersyal na software ay nagbibigay-daan sa paggamit ng open source software at proprietary na mga bahagi na ibinebenta ng mga third party, ngunit ang mga kumpanya ng software ay maaaring may limitadong kaalaman sa kalidad at pinagmulan ng code na ito. Kadalasan, ang saklaw at epekto ng isang kahinaan ay malalaman lamang pagkatapos lumitaw ang mga isyung ito.

Sa kaso ng Shellshock, halimbawa, ang problema sa code ay nagsimula noong 1989 at may malawak na hanay ng impluwensya - mula sa mga web server na nakabase sa CGI ( karaniwang interface gateway) at mga mail server Qmail, sa ilang partikular na kliyente ng DHCP. Nagsimula ang mga pag-atake sa kahinaan sa loob ng ilang oras ng pagsisiwalat nito.

Sundin ang mga pinuno

Ang mga naulilang proyekto at mahihinang pagsusuri ay hindi dapat magkubli sa katotohanan na ang ilan sa mga nangungunang kumpanya sa industriya ay lumilipat patungo sa secure na code.

Mga kumpanyang gumagawa mga komersyal na bersyon Linux tulad ng Canonical, Red Hat at Google na mamuhunan nang malaki sa seguridad at integridad ng open source. Ang mayayamang, open source-friendly na mga kumpanya tulad ng Netflix at Facebook ay naglaan ng makabuluhang mapagkukunan sa mga proyektong nagpapahusay sa kalidad ng open source code.

Sa Mozilla, ang responsibilidad para sa seguridad ay nahahati sa tatlong koponan, sabi ng development manager na si Jason Duell. Ang isang team ay inuuna ang mga isyu sa seguridad kapag sila ay natuklasan. Ang pangalawang koponan ay nalilito upang makahanap ng mga kahinaan, at ang ikatlong koponan ay bumuo ng mga tampok sa seguridad at privacy tulad ng Mozilla Seguridad ng Nilalaman Patakaran.

Sinabi ni Duell na ang malabo at mahigpit na pagsubok sa code na binuo ay isang pangunahing bahagi ng kultura ng pag-unlad ng Mozilla bago pa man siya sumali sa kumpanya anim na taon na ang nakararaan. Gayunpaman, binago ng Mozilla ang iba pang mga kasanayan sa pag-unlad dahil sa kamalayan nito sa lumalaking banta ng open source code.

"Binago namin ang iba't ibang mga kasanayan upang makasabay sa paggalugad ng mga kalaban sa aming mga pampublikong repositoryo para sa mga layunin ng pag-hack," sabi ni Duell. Sa isang banda, ang mga patch ng seguridad para sa Mozilla code ay pinagsama-sama bago ilabas upang bigyan ang mga umaatake ng mas kaunting oras. Bago ilabas ang mga pangunahing bagong feature, sinusuri ang mga ito ng security audit team.

Sa Canonical, na gumagawa ng Ubuntu Linux, sinusuri ng mabilis na lumalagong team ang security code na may kabuuang 35,000 software packages na inilabas bilang bahagi ng Ubuntu sa pamamagitan ng iba't ibang channel, sabi ni Dustin Kirkland, product manager para sa cloud solutions sa Canonical.

Tulad ng Mozilla, ang mga pagpapatakbo ng seguridad ng Canonical ay sumasaklaw sa isang hanay ng iba't ibang mga inisyatiba, mula sa pagbuo ng tampok hanggang sa mga pag-audit ng code. Sumasang-ayon sa punto ni Corman, sinabi ni Kirkland na ang panganib sa supply chain ay isang pangunahing isyu.

Ang Canonical ay naglalaan ng mga makabuluhang mapagkukunan sa pagtatasa ng posibilidad ng mga open source na bahagi na kasama ng pangunahing operating system.

"Gamit ang open source na teknolohiya, nagpapasya kami kung mas mahusay na gamitin ito o magsulat ng isang tinidor at pagkatapos ay bumuo at palawakin ito," sabi ni Kirkland, na isang 20-taong beterano ng open source space at naipamahagi nang higit sa 20 taon ng mga open source na proyekto. Ang kumpanya ay sinilaban mula sa loob ng open source na komunidad nang magpasya itong i-fork ang umiiral na open source code, ngunit nakikita ng Kirkland ang posibilidad ng forking bilang isa sa lakas open source.

"Hindi kami lilikha sariling bersyon OpenSSL at GPG," sabi ni Kirkland. "Gayunpaman, upang magkaroon mga alternatibong aklatan ang pag-encrypt ay napakahalaga. Kailangang magkaroon ng pagkakaiba-iba, lalo na kapag nalaman natin ang tungkol sa mga kahinaan ng ilan sa mga bahaging ito."

Ngayon lahat ay gumagamit ng open source

Bagama't tila hindi maginhawa, sinasabi ng mga eksperto na walang babalikan. Ginugol ni Weinberg ang karamihan sa kanyang karera bilang tinatawag niyang "tagapagtanggol ng pananampalataya," laban sa mga pagtatangka ng mga komersyal na vendor gaya ng Microsoft na siraan ang kilusang open source. Aniya, matagal nang giniba ang pader na minsang naghihiwalay sa "open source" at "closed source".

"Wala nang bagay na pagmamay-ari na software, dahil napakakaunting software na walang ilang uri ng open source dependency," sabi niya. "Ang mundo ay lumipat sa software na hinimok ng komunidad—sa isang anyo o iba pa."

"Talagang sa tingin ko ito ay isang nakabahaging responsibilidad," sabi ni Kirkland. "Kung iisipin mo kung gaano tayo umaasa sa maraming open source na software, kailangan mong umasa na ang seguridad ay magiging isang nakabahaging responsibilidad at ang responsibilidad ay hindi lamang nananatili sa Linux Foundation at Red Hat."

Sa madaling salita, maaari tayong magngangalit at maputol ang ating buhok tungkol sa Heartbleed, ngunit sa 2015, lahat ng kumpanyang gumagawa, gumagamit, o umaasa sa software ay mga de facto na open source na kumpanya ng software, alam man nila ito o hindi. Ginagawa silang bahagi ng problema at solusyon.

Evgeniy Tsarev

Tingnan ang mga matalinong open source utility na ito na idinisenyo upang protektahan ang source code, kilalanin malisyosong mga file, pagharang sa mga nakakahamak na proseso at pagtiyak ng seguridad sa endpoint.

Ang open source ay isang kahanga-hangang bagay. Ang isang makabuluhang bahagi ng mga modernong kumpanya ng IT at mga personal na teknolohiya ay nakasalalay sa open source software. Ngunit kahit na ang open source software ay malawakang ginagamit sa larangan mga teknolohiya ng network, mga operating system at virtualization, ang mga platform ng seguridad ng kumpanya ay nananatiling sarado. Sa kabutihang palad, ito ay nagbabago.

Isang masamang bagay kung hindi ka pa bumaling sa mga bukas na mapagkukunan upang makahanap ng mga solusyon sa iyong mga problema sa seguridad - inaalis mo ang iyong sarili sa isang malaking bilang ng mga libreng magagamit na utility na idinisenyo upang protektahan ang iyong mga network, host at data. At, higit sa lahat, marami sa mga utility na ito ay makukuha mula sa mga aktibong proyekto, na sinusuportahan ng kilalang, mapagkakatiwalaang mga mapagkukunan. At marami sa mga utility na ito ay nasubok sa mga kondisyon na napakahirap na hindi mo maiisip.

Ang open source ay palaging isang mayamang mapagkukunan ng mga tool para sa mga propesyonal sa seguridad. Ang Metasploit ay marahil ang pinakasikat, ngunit Seguridad ng Impormasyon ay hindi limitado sa mga aktibidad ng mga mananaliksik at analyst. Nalalapat din ito sa limang utilidad na susunod nating isasaalang-alang. Naglalaro ang mga IT administrator at software developer pangunahing tungkulin sa pagtiyak ng seguridad. Sa pamamagitan ng paggamit ng limang utility na nakalista sa ibaba, makakamit nila ang kapansin-pansing tagumpay.

Commit Watcher: Suriin ang mga repositoryo ng code para sa mga lihim

Ang mga open source na repository ay hindi dapat mag-imbak ng anumang sensitibong data. Ngunit hindi nito pinipigilan ang mga walang pag-iisip na developer na iwan sila doon. Higit sa isang beses nabasa namin ang mga ulat ng mga tao na hindi sinasadyang naglabas ng pribadong data ng Amazon. Mga serbisyo sa web, mga naka-encrypt na password, o mga token ng API sa pamamagitan ng pag-upload ng mga ito sa GitHub o iba pang mga imbakan ng code.

Upang labanan ito, ang SourceClear ay gumawa ng Commit Watcher. libreng utility open source software na naghahanap sa mga pampubliko at pribadong repositoryo para sa potensyal na mapanganib na data. Maaaring gamitin ng mga developer at administrator ang Commit Watcher upang subaybayan sariling proyekto sa kaso ng hindi sinasadyang pagbubunyag ng lihim na data.

Pana-panahong sinusuri ng Commit Watcher ang mga proyekto para sa mga bagong entry at naghahanap ng mga tugma sa alinman mga keyword at mga pariralang tinukoy sa mga tuntunin ng proyekto. Kasama sa mga panuntunan ang mga pangalan ng file, pattern ng code, komento, at pangalan ng may-akda. Ang Commit Watcher ay may kasamang dose-dosenang mga paunang na-configure na panuntunan na naghahanap ng mga kredensyal ng AWS, mga kredensyal ng Salesforce, mga SSH key, mga token API, at mga database dump.

Jak: I-encrypt ang iyong mga lihim sa Git

Maraming dahilan kung bakit maaaring hindi gumamit ng mga open source na tool ang mga IT administrator sa kanilang trabaho, kabilang ang mga alalahanin tungkol sa kakulangan ng teknikal na suporta. Ang mas mahalaga ay ang isyu ng pagtitiwala. Ang mga kumpanya ay nag-aatubili na umasa sa mga produkto mula sa hindi kilalang mga developer.

Ang mga open source na proyekto ng seguridad sa listahang ito ay sinusuportahan ng mga mapagkakatiwalaang mapagkukunan at dapat ay nasa iyong arsenal. Ang bawat isa sa mga tool na ito ay tumutugon sa mga partikular na isyu sa seguridad. Kung susubukan mo ang mga ito sa pagsasanay, hindi ito makakasama sa iyo. Ang mga utility na ito ay maaaring seryosong makaapekto sa iyong trabaho at, bilang resulta, ang seguridad ng iyong kapaligiran.

Ipinaliwanag ni Peter Van Valkenburg, pinuno ng pananaliksik sa Coin Center at miyembro ng board of directors ng Zcash Foundation, kung bakit Ang pagbuo ng open source software ay mahalaga para sa pagbuo ng tiwala at pagtiyak ng seguridad sa mga network ng blockchain.

Ang computer code na pinagbabatayan ng lahat ng pangunahing cryptocurrencies at bukas na mga proyekto ng blockchain ay binuo bilang open source software. Ang mga regulator at gumagawa ng patakaran na sinusubukang maunawaan ang mga cryptocurrencies ngunit hindi pamilyar sa naturang software ay maaaring mailigaw sa pag-iisip na ang mga sistemang ito ay (at dapat) binuo ng isa o higit pang mga komersyal na kumpanya. Bagaman maraming sikat na software ang aktwal na binuo Sa parehong paraan(tulad ng Microsoft Windows o RDBMS Oracle), iba ang mga bagay sa mga open source na proyekto, at ang pagkakaibang ito ay maaari at dapat na hubugin ang opinyon ng publiko. Ang open source software ay nilikha nang sama-sama, malayang ipinamahagi, inilathala nang hayagan, at binuo bilang isang produkto ng komunidad sa halip na pag-aari ng isang kumpanya o indibidwal. Sa kasong ito, walang monopolyo, walang isang kumpanya o indibidwal na gagawa at magbebenta ng software o nagmamay-ari nito. Kung paanong walang iisang kumpanya na nagmamay-ari ng network ng Bitcoin, walang iisang kumpanya na gumagawa ng software na tumatakbo sa mga computer na nakakonekta sa Internet upang mabuo ang network. Ang desentralisasyong ito ay may ilang pangunahing benepisyo na maaaring mahirap maunawaan para sa mga taong hindi pamilyar sa pag-develop ng software. Upang mas maunawaan ang kapangyarihan at katangian ng open source, maaaring makatulong na makakuha ng ilang insight sa isang partikular na matagumpay na halimbawa ng open source software. Operating room ang pinag-uusapan natin. Linux system.

Open source sa lahat ng dako

Mahirap kalkulahin kung gaano karaming beses sa isang araw ang gumagamit ka ng Linux, dahil ito ang operating system na pinagbabatayan ng operasyon ng karamihan sa mga server sa Internet. Sa tuwing binibisita mo ang Facebook, Google, Pinterest, Wikipedia at ang libu-libong iba pang pangunahing site, mga serbisyong ibinibigay sa iyo ng mga (napakaibang) site na ito, nakikipag-ugnayan ka sa mga computer na malamang na nagpapatakbo ng Linux operating system. Ang Linux ay matatagpuan nang mas malapit; Malamang na nasa kamay mo ito. Sabihin nating nakabatay sa Linux ang operating system ng mga Android smartphone. Kung mayroon kang Chromebook, gumagamit ka ng Linux-based na laptop. Ang operating system na ito ay lalong ginagamit sa mga telebisyon, thermostat, mga sistema ng multimedia sa mga eroplano, kotse, atbp.

Bakit ito kawili-wili? Dahil ang Linux ay hindi produkto ng isang programmer o kahit isang grupo ng mga programmer; hindi tulad ng MacOS o Windows, hindi ito binuo ng isa o kahit isang dosenang mga korporasyon. Ang Linux ay may libu-libong taga-ambag. Bilang Linux Foundation, isang non-profit na organisasyon na nagpo-promote ng bukas na pag-develop ng operating system, iniulat noong 2015, humigit-kumulang 14,000 developer mula sa higit sa 1,300 iba't ibang kumpanya ang nag-ambag ng mga snippet ng code. Noong 2015 lamang, 2,355 na developer ang lumahok sa mga pagpapahusay ng code sa unang pagkakataon. Kaya, sa pamamagitan ng extrapolation, maaaring kalkulahin na sa 2017 humigit-kumulang 18,000 katao ang nag-ambag, at ang bilang na ito ay lalago.

Sino ang mag-aakala kahit limang taon na ang nakalilipas (noong 1991) na ang isang world-class na operating system ay maaaring, na parang sa pamamagitan ng magic, ay pinagsama-sama sa isang solong kabuuan mula sa mga fragment ng freelance na trabaho ng ilang libong developer na nakakalat sa buong mundo at konektado lamang sa pamamagitan ng makamulto na mga thread ng Internet?

Mga Benepisyo ng Open Source

Sa kanyang aklat, binanggit ni Raymond kung paano ang open source ay isang rebolusyonaryong paraan ng paglikha ng teknolohiya. Ang Linux, na may libu-libong independiyenteng developer na nagtatrabaho sa isang pampublikong collaboration mode, ay nagpapakita ng open source na modelo. Ang mga cryptocurrency ay sumusunod sa parehong modelo, ngunit pag-uusapan natin iyon sa ibaba.

Itinampok ni Raymond ang ilang mga benepisyo ng open source na modelo. Ang mga susi sa konteksto ng ating talakayan ay ang mga sumusunod:

  • Ang bawat magandang piraso ng software ay nagsisimula sa pagbibigay-kasiyahan sa personal na pagnanais ng developer. Karamihan sa mga developer ng mga open source na proyekto ay hinihimok ng pagnanais na personal na gamitin nilikhang mga produkto. Hindi sila nakatali sa isang kontrata na nag-oobliga sa kanila na lumikha ng isang bagay para sa iba; mayroon silang personal na pangangailangan na kanilang natutugunan. Kaya, lumilitaw ang isang qualitatively different motivation, na bumubuo ng detalyadong kaalaman sa problema.
  • Alam ng magaling na programmer kung ano ang isusulat. Alam ng mga magagaling kung ano ang isusulat muli (at muling gamitin). Kapag hayagang ginawa ang pag-unlad, maiiwasan ang redundancy, at matukoy at mapapasimple ang problematic, complex o redundant code.
  • Kapag nawalan ka ng interes sa isang programa, ang iyong huling tungkulin dito ay ilipat ito sa mga kamay ng isang karampatang kahalili. Ang mga tao ay sumali at umalis sa isang open source na proyekto batay sa kanilang mga interes at kakayahan. Walang natigil sa pagtatrabaho sa mga proyektong hindi na kawili-wili. Lumilitaw ang mga sariwang ulo, na nag-aalok ng iba't ibang pananaw sa mga matagal nang problema o mga bagong prospect ng pag-unlad.
  • Ang pagtingin sa mga user bilang kapwa developer ay ang pinakamadaling paraan upang mapabuti ang code at epektibong pag-debug ng software. Maraming open source na user ang tumutulong na matukoy ang mga problema at magbigay pa nga ng mga solusyon. Ang linya sa pagitan ng consumer at producer ng open source software ay malabo: ang trabaho sa software ay transparent, ito ay isinasagawa sa mata ng publiko, at ang pakikilahok sa proseso ng paglikha ay magagamit ng lahat.
  • Kung mayroong sapat na malaking base ng mga beta tester at developer, halos anumang problema ay mabilis na matutukoy, at ang solusyon nito ay malamang na halata sa isang tao. Ang postulate na ito ay tinatawag na Linus's Law bilang parangal kay Linus Torvalds, ang lumikha ng Linux kernel, na sa mahabang panahon nanatiling pangunahing developer ng operating system na ito. Kapag ang proseso ng pagbuo ng code ay sarado, ang mga developer ay nanganganib na mawalan ng mahinang punto o hindi mapansin ang isang partikular na bug. Ang pagbuo sa mga may karanasang user na may natatanging pananaw ay nagpapataas ng posibilidad na matukoy at maayos ang mga bug, na ginagawang mas secure at nababanat ang open source software.

Ang resulta ng pag-unlad na ito ay isang napaka maaasahan code ng programa, na ginawa ng mga user para sa mga user. Ang layunin ay hindi upang lumikha ng isang bagay na nagpapayaman sa kumpanya na gumagawa at nagbebenta ng mga produkto, ngunit sa halip upang malutas ang isang problema na karaniwan nang dakilang pamayanan ang mga mahuhusay na programmer ay masaya na nag-ambag. Ang mga taong walang kasanayan sa programming ay lubos na nakikinabang sa modelong ito. Ang libreng software ay tila nagiging materyal sa labas ng manipis na hangin, malayang magagamit sa lahat, at pinananatiling na-update hangga't ang mga user sa antas ng eksperto ay interesado rin sa paggamit nito.

Batas at Libreng Software

Sinusuportahan ng kasalukuyang batas at sa ilang mga kaso ay hinihikayat ang pagbuo ng open source software. Ito, tulad ng lahat ng software, ay protektado ng copyright, ngunit ang mga may-akda nito ay naglalabas ng code sa ilalim ng isang lisensya na nagpapahintulot sa sinuman na gamitin at baguhin ito nang walang partikular na pahintulot o anumang pagbabayad sa mga may-akda (iyon ay, ang lisensyang binuo ng Massachusetts Institute of Technology - MIT).

Kasama sa ilang lisensya ang mga kinakailangan na ang mga derivatives ng software ay dapat ilabas sa ilalim ng parehong mga tuntunin. Salamat sa scheme na ito, lumalaki at kumakalat ang open source code base. Ang hindi pangkaraniwang bagay na ito ay kilala bilang lisensya ng libreng software, o LGPL-3 - ang Lesser General Public License.

Open source sa cryptocurrencies at mga proyekto ng token

Maaaring ang Linux ang pinakamalaki at pinakamahalagang halimbawa ng open source na modelo, ngunit may iba pa. Kabilang dito ang lahat ng pangunahing proyekto ng cryptocurrency at blockchain. Lahat sila ay lumikha mga network ng kompyuter, na nagpapahintulot sa mga kalahok na maabot ang kasunduan sa nakabahaging data (cryptocurrency blockchain).

Ang software na nagbibigay sa sinumang kalahok ng kakayahang kumonekta sa network ay tinatawag na isang kliyente, at ito ay open source software. Kadalasan, ang software ng kliyente ay binuo ng ilang hindi nauugnay na kalahok bilang pinakasimpleng bersyon network software (iyon ay, ang tinatawag na reference client), sa batayan kung saan maaari kang bumuo ng software para sa pagmimina, wallet, exchange o iba pang software na katugma sa network.

Kliyente Bitcoin Core- ang resulta ng gawain ng higit sa 450 independiyenteng mga developer na, sa kabuuan, ay nag-ambag sa pagbuo ng code nang higit sa 15,000 beses. Ang software ay magagamit para sa libreng paggamit at pagbabago sa ilalim ng MIT Free Software License, at ang buong kasaysayan ng pag-unlad ay magagamit para sa pagsusuri sa isang pampublikong imbakan sa Github, isang serbisyo sa cloud na nagpapahintulot sa sinuman na lumikha ng isang account, mag-download bagong code at subaybayan ang mga pagbabago. Kung ang repositoryo na gagawin mo ay bukas sa pampublikong pagtingin, komento at pagbabago ng mga mungkahi, hindi mo na kailangang magbayad para sa isang Github account.

Sinusubaybayan din ng pampublikong repositoryo ang tinatawag na mga tinidor ng orihinal na kliyente. Ang isang tinidor ay lumilikha ng isang clone ng orihinal na software, na maaaring mabago para sa isang layunin o isa pa nang hindi binabago ang orihinal na imbakan. Ang mga developer ay libre na i-fork ang Bitcoin Core repository sa Github upang lumikha ng alinman sa mga partikular na application na tugma sa Bitcoin (halimbawa, isang wallet para sa mga smartphone) o bagong cryptocurrency, na huminto sa pagiging tugma sa network ng Bitcoin at nagpapahiwatig ng paglikha ng isang bagong network ng cryptocurrency (halimbawa, ito ang kaso sa Litecoin o Zcash). Sa ngayon, ang orihinal na kliyente ng Bitcoin Core ay na-forked nang higit sa 10,000 beses, at ang mga bagong repositoryo na lumalabas ay nagpapakita na ang paglikha ng mga derivative na produkto ay nagpapatuloy.

Ang Ethereum ay mayroon na ngayong hindi bababa sa 121 na mga repository, na ang bawat isa ay nakatutok sa isang partikular na aspeto ng proyekto (halimbawa, mga programming language para sa pagsusulat ng mga matalinong kontrata, mga graphical na browser para sa pakikipag-ugnayan end user kasama ang Ethereum network, mga katugmang kliyente na lumahok sa network, atbp.). Mayroong hindi bababa sa walong mga proyekto na naglalayong bumuo ng mga kliyente na katugma sa Ethereum, at ang pinakasikat na mga kliyente (go-ethereum at Parity) ay may daan-daang mga independiyenteng developer na nagtatrabaho sa kanila. Ethereum code at nito buong kwento, tulad ng code at kasaysayan ng Bitcoin, ay magagamit para sa pampublikong pagtingin sa Github at iba pang mga site. mga imbakan ng network, at ang lahat ng code ay inilabas sa ilalim ng lisensya ng LGPL-3, na nangangailangan ng lahat ng mga gawang hinalaw sa hinaharap na ilabas sa ilalim ng parehong lisensya.

Kahit na ang mga kamakailang proyekto na hinimok ng mga komersyal na startup ay nagpapakita ng pangako sa open source na kredo. Binubuo ng Zcash Company ang Zcash protocol sa pamamagitan ng isang pampublikong repositoryo. Ang ilan sa mga nangungunang developer ay hindi gumagana para sa kumpanya, at ang isang espesyal na nilikhang non-profit na organisasyon ay nakatuon sa pagtiyak na mayroong unti-unting paglipat mula sa pagpapaunlad na pinangungunahan ng kumpanya patungo sa pag-unlad na hinimok ng komunidad. Ang Zcash source code base ay inilabas sa ilalim ng lisensya ng MIT. Ang Protocol labs, ang developer ng Filecoin, ay nagnanais na lumikha ng katulad bukas na modelo at nasubukan na ito sa kanyang proyekto sa IPFS, nagtatrabaho kasama ang code sa mga bukas na repositoryo at inilabas ito sa ilalim ng lisensya ng MIT.

Bakit mahalaga ang open source

Ang mga cryptocurrencies at pampublikong blockchain ay maaaring magbigay ng functionality na ire-regulate kung ito ay nagmula sa iisang korporasyon. Mga sentralisadong issuer digital na pera, gaya ng Liberty Reserve o E-gold, ay mga serbisyo sa pananalapi at kinakailangang magparehistro sa U.S. Treasury's Financial Crimes Enforcement Administration at kumuha ng lisensya ng money transmitter sa bawat estado. Kung ang mga naturang token ay ibinebenta upang makaakit ng mga mamumuhunan, maaari silang bumuo ng mga seguridad, kung saan kinakailangan ang pagpaparehistro sa US Securities and Exchange Commission. Ang mga paghihigpit na ito ay may katuturan dahil ang mga sentralisadong serbisyo ay may panganib na ang partido sa gitna ng pamamaraan ay mabibigo na tuparin ang mga pangako nito na sapat na subukan ang produkto at gawin itong ligtas.

Gayunpaman, ang mga teknolohiya tulad ng Bitcoin ay maaaring mag-alok ng katulad na pag-andar habang bukas at hindi ibinabahagi sa sinuman. mga network na pagmamay-ari. Walang korporasyon dito. Sumasali ang mga user sa mga network na ito, at hinihikayat sila ng open source na software na mag-collaborate. Sa huli, lahat ng mga kalahok ay sumasang-ayon sa bawat piraso ng data na kailangan para gawin ang currency. Ang desentralisasyon ay nakasalalay sa dalawang haligi: bukas na mga mekanismo ng pinagkasunduan at software open source. Kung hindi open source ang code, paano mauunawaan at mapagkakatiwalaan ng mga kalahok (mga taong hindi magkakilala sa Internet) ang system na kanilang sinasali?

Sa katunayan, ang mga proyekto ng token batay sa proprietary code ay maaaring mga sentralisadong serbisyo na nagtatago sa likod ng propesyonal na slang at "blockchain gobbledygook." Gayunpaman, ang mga "totoo" na proyekto ay may code na lumilikha ng isang desentralisadong network na nagpapahintulot sa mga kalahok na magtiwala sa isa't isa, magkaroon ng isang karaniwang pagganyak at parusahan ang mga manloloko, at ito mismo ay desentralisado. Ito ay binuo sa harap ng daan-daang mga mahilig, ay magagamit para sa lahat sa mundo upang gamitin at baguhin, at ganap na independyente sa mga interes ng kumpanya.