czwartek, sierpnia 21, 2008

Java i XMLDsig (i nie tylko)
  1. Zgodnie z projektem JSR-000105 XML Digital Signature APIs powstały założenie impelentacji podpisu. Sun udostępnia tutorial Java Web Service Developers Pack gdzie opisuje m.in. podpis cyfrowy dokumentów. Do ściągnięcia jest też sam WSDP w wersji 2.0. Ale ponieważ na konferrencji 2006 JavaOne w San Francisco Sun ogłosił przeniesienie go do projektu GlassFish (blog na ten temat) to tam trzeba szukać dalszych rozwiązań. Artykuł na ten temat ukazał się tu - http://today.java.net/pub/a/today/2006/11/21/xml-signature-with-jsr-105.html z niego wynika, że w wersji Java SE 6 będzie to włączone.
  2. Od dawna wiadomo, że nie należy ufać danym wprowadzonym przez użytkownika i wysyłanym do serwer aprzez GET lub POST. Dlatego proponuje się rozwiązanie polegające na szyfrowaniu danych w URL.
  3. Wady i zalety różnych JPA - http://today.java.net/pub/a/today/2007/12/18/adopting-java-persistence-framework.html
  4. Uruchaminaie skryptów w Java - http://today.java.net/pub/a/today/2007/09/20/scripting-balance-design-performance.html
  5. Zasoby do java - http://www.javawhat.com/gotoDirectorySubmenu.do;jsessionid=4F99A08389EA9F315A2024716B4A4A33?submenu=articles
  6. Opis przetargu na "II.1) OPIS

    II.1.1) Nazwa nadana zamówieniu przez zamawiającego: Postępowanie o zamówienie publiczne w trybie przetargu nieograniczonego na dostawę rozwiązania informatycznego realizującego usługi ochrony informacji oraz licencji dla oprogramowania do podpisu i weryfikacji podpisu elektronicznego dla potrzeb Izby Celnej w Krakowie.


    II.1.2) Rodzaj zamówienia: dostawy.


    II.1.3) Określenie przedmiotu zamówienia: 1. Zadanie 1

    Przedmiotem zamówienia jest dostarczenie dwóch identycznych zestawów komponentów sprzętowych i programowych zapewniających:
    1) Generowanie kodu kryptograficznego służącego do identyfikacji systemu informatycznego wydającego Urzędowe Potwierdzenie Odbioru na podstawie rozporządzenia Prezesa Rady Ministrów z dnia 29 września 2005r. w sprawie warunków organizacyjno-technicznych doręczania dokumentów elektronicznych podmiotom publicznym (Dz. U. Nr 200, poz. 1651 z 2005r.) dla dokumentów XML zgodnie ze standardem W3C XMLdSign wg profilu XAdES-enveloped.
    2) Generowanie kodu kryptograficznego do identyfikacji systemu informatycznego wydającego dokument zgodnie ze standardem W3C XMLdSign wg profilu XAdES-enveloped dla dokumentów XML; kod ten musi być powiązany z dokumentem kluczem Zamawiającego w taki sposób, że jakakolwiek zmiana w dokumencie jest rozpoznawalna.
    3) Generowanie kodu kryptograficznego w oddzielnym pliku XML dla dokumentów binarnych zgodnie ze standardem W3C XMLdSign wg profilu XAdES-detached; kod ten powinien być powiązany z dokumentem i kluczem Zamawiającego w taki sposób, że jakakolwiek zmiana w dokumencie jest rozpoznawalna.
    4) Deszyfrowanie dokumentów XML przeznaczonych dla podmiotu publicznego, zaszyfrowanych zgodnie z XML/Encrypt.
    5) Podawanie bieżącego czasu, z wewnętrznego zegara.

    Urządzenie będzie wchodziło w skład systemu teleinformatycznego Zamawiającego i musi świadczyć wymienione zadania za pomocą usług WebServices udostępnianych przez urządzenie dla aplikacji podmiotu publicznego.
    Zadanie 2.

    Przedmiotem zamówienia jest dostarczenie oprogramowania , które będzie przez Zamawiającego udostępnione w celu umożliwienia osobom trzecim podpisywania dokumentów przesyłanych do systemów informatycznych administracji celnej oraz weryfikacja otrzymanych z tych systemów informacji, zwanego dalej -kontrolką"

  7. Wprowadzenie (elementarne) do XMLSIGN - http://www.xml.com/pub/a/2001/08/08/xmldsig.html co oni piszą "To create a digital signature for a message, the data to be signed is transformed by an algorithm that takes as input the private key of the sender. Because a transformation determined by the sender's private key can only be undone if the reverse transform takes as a parameter the sender's public key, a recipient of the transformed data can be confident of the origin of the data (the identity of the sender). If the data can be verified using the sender's public key, then it must have been signed using the corresponding private key (to which only the sender should have access).

    For signature verification to be meaningful, the verifier must have confidence that the public key does actually belong to the sender (otherwise an impostor could claim to be the sender, presenting her own public key in place of the real one). A certificate, issued by a Certification Authority, is an assertion of the validity of the binding between the certificate's subject and her public key such that other users can be confident that the public key does indeed correspond to the subject who claims it as her own.

    Largely due to the performance characteristics of public-key algorithms, the entire message data is typically not itself transformed directly with the private key. Instead a small unique thumbprint of the document, called a "hash" or "digest", is transformed. Because the hashing algorithm is very sensitive to any changes in the source document, the hash of the original allows a recipient to verify that the document was not altered (by comparing the hash that was sent to them with the hash they calculate from the document they received). Additionally, by transforming the hash with their private key, the sender also allows the recipient to verify that it was indeed the sender that performed the transformation (because the recipient was able to use the sender's public key to "undo" the transformation). The hash of a document, transformed with the sender's private key, thereby acts as a digital signature for that document and can be transmitted openly along with the document to the recipient. The recipient verifies the signature by taking a hash of the message and inputting it to a verification algorithm along with the signature that accompanied the message and the sender's public key. If the result is successful, the recipient can be confident of both the authenticity and integrity of the message. "

  8. Na temat algorytmów XAdEs jest mowa w http://www.podpiselektroniczny.pl/epaczka.htm, szukaj również w http://swik.net/XMLDSIG

  9. Źródło - http://www.aleksey.com/xmlsec/index.html i http://www.west-wind.com/weblog/posts/257599.aspx

środa, sierpnia 20, 2008

Co nowego:
  1. Wreszcie Harmonia i koniec z niebezpiecznymi rozszerzeniami wprowadzonymi w Firefox 1.7 i wyżej. Na witrynie SitePoint jest ciekawy artykuł na temat ujednolicenia nurtów rozwoju Javascript a właściwie ECMA-262. Nareszcie powstanie jednolita notacja nowej wersji języka ECMAScript v.3.1. Do tej pory były dwa nurty rozowju: rewolucyjny reprezentowany przez Mozilla, Adobe i ewolucyjny za ktróym stał MS i Yahoo. Spotkanie TC39 odbyło się w OSLO a rekacje na jego wyniki są tutaj ..."The official announcement by Mozilla’s Brendan Eich can be read at Ajaxian, and the reactions from other JavaScript notables like John Resig, Douglas Crockford, Mike Chambers, and Alex Russell make worthwhile reading (with varying levels of technical detail). Also, Episode 2 of the newly-launched Open Web Podcast brings a lot of these people together to discuss the change in direction."
  2. Kurs programowania obiektowego w JS - http://www.sitepoint.com/article/oriented-programming-1
Certyfikaty:
  1. Na betanews ukazał sie artykuł o wykorzystaniu certyfikatów utworzonych samodzielnie SSC (Self Signed Certificate) ale wykorzystywanych do podpisywania stron internetowych przy korzystaniu z SSL. IE 7 i FF 3.0 wyświetlają ten fakt dość nieprzyjemnie ten fakt informując użytkownika o potencjalnym naruszeniu bezpieczeństwa z uwagi na niezaufanie do urzędzu któy wystawił ten certyfikat. Dodatkowo powodują domyślne przyznanie zaufania do innych stron wymienionych w certyfikacie (alternate sites) a te już mogą być bardzo niebezpieczne. Z drugiej strony posługiwanie się certyfikatem jest podstawą (wymusza) korzystania z SSL do szyfrowania ruchu HTTP, a nie każdego stać na kupno "legalnego" certyfikatu. Witryna StartSSL daje bezpłatny certyfikat klasy 1.

wtorek, sierpnia 19, 2008

Ciekawostki:
  1. Jak uruchomić proces w imieniu innego użytkownika "But, let's face it -- setting this for an entire machine or Organization Unit of them using policies is like using a sledgehammer when you really need ... well ... not a sledgehammer. Another option is available for those one-off times that you need RunAs elevation for a specific EXE. Download the Sysinternals tool ShellRunAs and drop it into your computer's path somewhere (such as C:WindowsSystem32) and then run the command:

    shellrunas /reg

    Doing this adds another menu item to the right-click context menu called Run as a Different User. You can also run shellrunas {programName} from the command prompt to do the same". W systinternals są bardzo ciekawe programy systemowo-natzędziowe.

  2. Nowy wymiar prezentacji PPTPlex - http://www.officelabs.com/projects/pptPlex/Pages/default.aspx - ciekawe efekty

  3. Inne "dobra" z MS - http://communityclips.officelabs.com/Search.aspx - nauka obsługi programów pakietu MS Office 2007

  4. Ciekawe prezentacja na CNet - http://cnettv.cnet.com/

  5. JitterBit - narzędzie do integracji - interesujące

  6. Ciekawe porównanie technologii servletów i EJB. Każda z nich zajmuje się iina działką, EJB jest skalowana na poziomie architektury podczas gdy servlety na poziomie sprzętu.

  7. Strona specjalnie przeznaczona dla VB - http://www.visualbasicrocks.com/Home.aspx

  8. Sekwencja sterowania przy edycji danych korzystając z DataGrid:

    By default, the DataGrid supports resizing, reordering, sorting, adding and removing. This behavior can be controlled with the following properties:

    • CanUserAddRows
    • CanUserDeleteRows
    • CanUserResizeColumns
    • CanUserReorderColumns
    • CanUserSortColumns

    On editing a cell, the following events gets fired...

    • PreparingCellForEdit
    • BeginningEdit
    • CommitingEdit
    • CancelingEdit
  9. Applet do połączeń sieciowych http://www.webreference.com/dev/proxy/index.html

niedziela, sierpnia 17, 2008

Ciekawe
  1. Zen habit przedstawia swój punkt widzenia na ćwiczenia fizyczne.
  2. Najbardziej inspirujące filmy na YouTube - http://feeds.feedburner.com/~r/zenhabits/~3/362941939/
  3. FeedBurner o ZenHabit
  4. Jak stać się znawcą jQuery
  5. Jak się szybko nauczyć szybko i efektywnie pływać
  6. Wykorzystanie FireBug (i PHP)
  7. Java - odczyt dokumentów XML przy pomocy JDOM
  8. Dojo do sprawdzania danych
  9. "Harmony and dream" z NYT o różnicach w psychice ludzi białych (indywidualistów) i zółtych (kolektywistów)
  10. O życiu - http://www.realsimple.com/realsimple/content/lifesoul/0,21770,1699954-3,00.html