Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 9 reacties
Bron: OpenSSL

OpenSSL is een bekend beveiligingsprogramma dat encryptiefuncties aanbiedt. Het bevat een implementatie van de tls- en ssl-protocollen, waarmee data versleuteld verstuurd en ontvangen kan worden. Voor meer informatie verwijzen we jullie door naar deze pagina. De ontwikkelaars hebben nieuwe versies uitgebracht met 1.0.0a en 0.9.8o als de versieaanduidingen. De bijbehorende lijst met veranderingen ziet er als volgt uit:

Changes between 1.0.0 and 1.0.0a:
  • Check return value of int_rsa_verify in pkey_rsa_verifyrecover (CVE-2010-1633) [Steve Henson, Peter-Michael Hager]
Changes between 0.9.8n and 0.9.8o:
  • Correct a typo in the CMS ASN1 module which can result in invalid memory access or freeing data twice (CVE-2010-0742) [Steve Henson, Ronald Moesbergen]
  • Add SHA2 algorithms to SSL_library_init(). SHA2 is becoming far more common in certificates and some applications which only call SSL_library_init and not OpenSSL_add_all_algorithms() will fail. [Steve Henson]
Versienummer:1.0.0a / 0.9.8o
Releasestatus:Final
Besturingssystemen:Windows 7, Windows 2000, Linux, BSD, Windows XP, macOS, Solaris, UNIX, Windows Server 2003, Windows Vista, Windows Server 2008
Website:OpenSSL
Download:http://www.openssl.org/source/
Licentietype:Voorwaarden (GNU/BSD/etc.)
Moderatie-faq Wijzig weergave

Reacties (9)

"which can result in invalid memory access or freeing data twice"

Zoiets zou dus nooiit kunnen gebeuren in Object C of C++.
Waarom gebruiken ze hiervoor C?
"which can result in invalid memory access or freeing data twice"
Ik zie niet in waarom dat dit niet in C++ zou kunnen gebeuren. Alleen als je gebruik maakt van een garbage collector en alle memory alloccation/de-allocation via de garbage collector laat lopen ben je zeker dat zoiets niet gebeurt - bugs in de GC uitgezonderd natuurlijk...

Een project als OpenSSL is al heel erg oud en C is/was de meest portable taal die je kon bedenken. Inmiddels is C++ ook wel een goed alternatief maar qua portability is C toch nog steeds de koning der talen.
Laat me het anders stellen, als ze met C++ en objecten werken had zoiets niet gebeurt.
Overigens is C++ net zo portable als C, en met C++0x en C99 adoptatie zie ik C niet echt meer de "koning der talen" (heb ik overigens nooit gedaan).
Met een logisch beleid heb je in C++ ook geen GC nodig.

Het enige waar C nog goed voor is is api calling, dus perfect voor kernels en libraries.

[Reactie gewijzigd door kaasinees op 3 juni 2010 19:08]

Ehm, ook al werk je volledig OOP dan kan je nog steeds geheugen leks hebben. Vooral als je met pointers werkt.

Verder is C zeker beter als je portabiliteit belangrijk vindt. True, C++ draait ook goed, maar zeker met oude systemen is C vaak makkelijker.
"Ehm, ook al werk je volledig OOP dan kan je nog steeds geheugen leks hebben. Vooral als je met pointers werkt."

Dat klopt, maar een foutje als

"Correct a typo ... "

komt dan veel minder voor.

"Verder is C zeker beter als je portabiliteit belangrijk vindt. True, C++ draait ook goed, maar zeker met oude systemen is C vaak makkelijker."

Kun je hiervan een voorbeeld geven?
Ik vind het telkens weer komisch als iemand aangeeft dat een programmeerfout niet had kunnen voorkomen als men een andere taal had gebruikt.

Dat is zoiets als 'die spraakverwarring hadden we niet gehad als ze gewoon engels gesproken zouden hebben'... onzin dus.
Een beetje kromme vergelijking, omdat C++ simpelweg OOP opgebouwd is, een hele andere structuur dan C

OT: OpenSSL, geliefd door velen, en terecht O+
Nee C++ is niet opgebouwd uit OOP, het is uit C opgebouwd en ondersteund OOP.
Java en C# is opgebouwd uit OOP.

De structuur van C en C++ is minder verschillend dan je denkt, al word het verschil met elke standaard weer groter, het is nog steeds opgebouwd uit C en in die nieuwe standaard zijn aspecten van C99 opgenomen.
Waarom denk je dat OOP is onstaan?
Het is wel bekend dat in OOP talen veel minder geheugen leks voorkomen dan in C.
Voor vele bedrijven is C eeen nachtmerrie geweest in onderhouden vooral ivm geheugen leks.

Als je geschiedenis van C vs C++ kent denk je wel anders.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True