januari 24, 2017

Dataopslag en communicatie

Microsoft Office

Aantal rijen en kolommen

Excel had tot versie 7.0 een beperking in de omvang van de datasets tot 16K (214 = 16.384) rijen. Versies 8.0 tot 11.0 konden 64K (216 = 65.536) rijen en 256 kolommen (28 tot label ‘IV’) aan. Versie 12.0 kan met 1M (220 = 1.048.576) rijen en 16.384 (214 tot label ‘XFD’) kolommen overweg.

Bestandsformaten

Microsoft Excel gebruikte tot versie 2007 hun eigen binaire bestandformaat genaamd Excel Binary File Format (.xls) als primair formaat. Excel 2007 maakt gebruik van Office Open XML als primair bestandsformaat, een op XML gebaseerde formaat dat volgde na een eerder op XML gebaseerd formaat genaamd “XML Spreadsheet” ( “XMLSS”), dat voor het eerst in Excel 2002 werd geïntroduceerd.

Hoewel Excel 2007 het gebruik van de nieuwe op XML-gebaseerde formaten als vervangers ondersteunde en stimuleerde, bleef het uitwisselbaar met de traditionele, binaire formaten. De meeste versies van Microsoft Excel kunnen bovendien CSV, DBF, SYLK, DIF, en andere oudere formaten lezen. De ondersteuning van enkele oudere bestandsformaten werd in Excel 2007 verwijderd. Dat betrof voornamelijk bestandsindelingen die afkomstig waren uit DOS-programma’s.

XML Spreadsheet – Microsoft Office XML-formaten

Het in Excel 2002 geïntroduceerde XML Spreadsheet-formaat is een eenvoudig, op XML-gebaseerd formaat, waarin een aantal meer geavanceerde functies, zoals de opslag van VBA-macro’s ontbreekt. Hoewel het eigenlijke bestandsextensie voor dit formaat .xml is, kan het programma ook prima met XML-bestanden met de extensie .xls overweg. Deze functie wordt veelvuldig gebruikt door toepassingen van derden (bijv. MySQL Query Browser) om de mogelijkheid tot “exporteren naar Excel” te bieden zonder het binaire bestandsformaat te hoeven implementeren.

Het gebruik van andere Windows-toepassingen

Windows toepassingen zoals Microsoft Access en Microsoft Word, en ook Microsoft Excel kunnen met elkaar communiceren en van elkaars mogelijkheden gebruik maken. De meest voorkomende zijn:

Dynamic Data Exchange (DDE): hoewel door Microsoft sterk afgeraden, is dit een veelgebruikte methode om gegevens te versturen tussen applicaties die op Windows draaien, terwijl de officiële publicaties van Microsoft er naar verwijzen als “het protocol uit de hel”. Zoals de naam al doet vermoeden, stelt het applicaties in staat om gegevens naar elkaar te versturen voor berekeningen en weergave. Het wordt in de financiële markten veel gebruikt om verbinding te maken met belangrijke financiële datadiensten, zoals Bloomberg en Reuters.

Object Linking and Embedding (OLE): dit stelt een Windows-toepassing in staat om een andere te besturen om gegevens te kunnen formatteren of te berekenen. Dit kan in de vorm van “inbedding”, waarbij een toepassing een andere gebruikt om een taak uit te voeren waar deze beter geschikt voor is. Een PowerPoint-presentatie kan bijvoorbeeld in een Excel-spreadsheet worden ingebed of andersom.

Het gebruik van externe gegevens

Excel-gebruikers kunnen toegang krijgen tot externe gegevensbronnen via Microsoft Office-functies zoals (bijvoorbeeld) .odc verbindingen die zijn opgezet met het Office Data Connection bestandsformaat. Ook Excel-bestanden zelf kunnen worden bijgewerkt met behulp van een door Microsoft meegeleverd ODBC-stuurprogramma.

Excel kan de gegevens in real time ontvangen via verschillende programmeer-interfaces, die het mogelijk maken om met een groot aantal gegevensbronnen te communiceren zoals Bloomberg en Reuters (via invoegtoepassingen zoals Power Plus Pro).

  • DDE: “Dynamic Data Exchange” maakt gebruikt van het “message passing” mechanisme van Windows om gegevensstromen tussen Excel en andere toepassingen mogelijk te maken. Hoewel het voor gebruikers gemakkelijk is om dergelijke koppelingen te maken, is het betrouwbaar programmeren van dat soort links zo moeilijk dat Microsoft, de makers van het systeem, er officieel naar verwijst als “het protocol uit de hel”. Ondanks de vele problemen blijft DDE de meest gebruikelijke manier waarop gegevens naar handelaren in de financiële markten worden verstuurd.
  • Network DDE: Een uitbreiding van het protocol om spreadsheets op verschillende computers in staat te stellen gegevens uit te wisselen. Vanaf Windows Vista ondersteunt Microsoft deze mogelijkheid niet langer.
  • Real Time Data:. hoewel RTD in veel opzichten technisch superieur is aan DDE, is het maar langzaam geaccepteerd geraakt, omdat het meer vereist dan simpele programmeervaardigheden, en toen het voor het eerst werd uitgebracht was het onvoldoende gedocumenteerd, en miste het ondersteuning van de belangrijkste gegevensleveranciers.

Als alternatief biedt Microsoft Query op ODBC gebaseerd zoeken in Microsoft Excel.

Export en migratie van spreadsheets

Programmeurs hebben API’s gemaakt om Excel spreadsheets open te stellen voor een groot aantal toepassingen en omgevingen, anders dan Microsoft Excel. Dit zijn onder andere het openen van Excel-documenten op het web met behulp van ActiveX-besturingselementen of plug-ins zoals de Adobe Flash Player. Het opensource project Apache POI stelt Java-bibliotheken beschikbaar voor het lezen en schrijven van Excel spreadsheet-bestanden. ExcelPackage is nog zo’n opensource project dat mogelijkheden biedt tot het op afstand op de server maken van Microsoft Excel 2007 spreadsheets. PHPExcel is een PHP-bibliotheek die documenten in Excel5, Excel 2003 en Excel 2007-formaat omzet naar objecten voor het lezen en schrijven binnen een webapplicatie. Excel Services is een actuele .NET ontwikkeltool die de mogelijkheden van Excel kan verbeteren. Excel-spreadsheets kunnen vanuit Python worden benaderd met xlrd en openpyxl. Vanuit JavaScript kunnen Excel-spreadsheets worden geopend met js-xlsx en js-xls.

Wachtwoordbeveiliging

Hoofdartikel: Microsoft Office wachtwoordbeveiliging

De beveiliging in Microsoft Excel biedt verschillende soorten wachtwoorden:

  • Wachtwoord om een document te openen
  • Wachtwoord om een document te wijzigen
  • Wachtwoord om de beveiliging van een werkblad op te heffen
  • Wachtwoord om een werkmap te beveiligen
  • Wachtwoord om het delen van een werkmap te beveiligen

Alle wachtwoorden, behalve het wachtwoord om een document te openen, kunnen eenvoudig worden verwijderd, met welke versie van Microsoft Excel het document ook is gemaakt. Dit type wachtwoorden wordt voornamelijk gebruikt voor het gedeeld werken aan een document. Dergelijke met een wachtwoord beveiligde documenten worden niet versleuteld, en de gegevensbron van een ingesteld wachtwoord wordt opgeslagen in de header van een document. Een wachtwoord om werkmap te beveiligen is een uitzondering – zodra deze is ingesteld, wordt een document versleuteld met het standaard wachtwoord “VelvetSweatshop”, maar aangezien dat publiekelijk bekend is, voegt dat in feite geen extra bescherming aan het document toe. Het enige type wachtwoord dat kan voorkomen dat een buitenstaander toegang tot een document verkrijgt, is het wachtwoord om een document te openen. De cryptografische sterkte van dit type beveiliging hangt sterk af van de versie van Microsoft Excel die werd gebruikt om het document te maken.

In Microsoft Excel 95 en eerdere versies wordt het wachtwoord om een document te openen omgezet naar een 16-bits sleutel die eenvoudig kan worden gekraakt. In Excel 97/2000 wordt het wachtwoord omgezet in een 40-bits sleutel, die met behulp van moderne apparatuur ook snel kan worden gekraakt. Wanneer gebruik wordt gemaakt van zogenaamde rainbow tabellen (bijv. Password-Find), duurt het tot enkele seconden om de beveiliging te verwijderen. Daarnaast kunnen programma’s om wachtwoorden te kraken de brute force-methode gebruiken met een snelheid van honderdduizenden wachtwoorden per seconde, waarmee het niet alleen een document kan decoderen, maar ook het originele wachtwoord vinden.

In Excel 2003/XP is de encryptie ietsje beter. De gebruiker kan dankzij de Cryptographic Service Provider elk encryptie-algoritme kiezen dat in het systeem beschikbaar is. Vanwege de CSP kan een Excel-bestand niet worden gedecodeerd en het wachtwoord om een document te openen niet worden verwijderd, hoewel de snelheid via de brute force-aanval vrij hoog blijft. Desondanks wordt standaard het oudere Excel 97/2000 algoritme ingesteld. Bij gebruikers die de standaardinstellingen niet wijzigen, ontbreekt dus een betrouwbare bescherming van hun documenten.

Die situatie veranderde ingrijpend in Excel 2007, waar het moderne AES-algoritme met een sleutel van 128 bits in gebruik werd genomen voor decryptie en een 50.000-voudig gebruik van de hashfunctie SHA1 verminderde de snelheid van de brute force-aanvallen tot enkele honderden wachtwoorden per seconde. In Excel 2010 werd de sterkte van de standaard bescherming twee keer verhoogd door het gebruik van een 100.000-voudige SHA1 om een wachtwoord naar een sleutel om te zetten.

Meer lezen over Microsoft Excel? Klik hier voor hoofdstuk 2 of hier om terug te keren naar de homepagina van onze FlorijnWiki-pagina’s.

WhatsApp Ons whatsapp