Rozwiązywanie problemów z podpisywaniem plików kwalifikowanym podpisem elektroniczym

Proponowane czynności do wykonania, gdy wystąpią problemy podczas podpisywania pliku podpisem kwalifikowanym:

1. Sprawdzenie ważności certyfikatu,

2. Sprawdzenie poprawności ścieżki certyfikacji dla certyfikatu do podpisu elektronicznego.

Możliwe komunikaty: “Łańcuch certyfikacyjny nie został zweryfikowany“. Komunikat informuje, iż łańcuch certyfikacyjny nie został zweryfikowany – czyli któryś z certyfikatów w ścieżce jest nie ważny.

W przypadku niepoprawnej ścieżki należy zainstalować odpowiednie certyfikaty dla głównego lub pośredniego urzędu certyfikacji.
Instalacja certyfikatów głównego i pośredniego urzędu certyfikacji w Windows

3. Ponowne usunięcie i dodanie certyfikatu do podpisu elektronicznego z / do magazynu certyfikatów w systemie operacyjnym Windows

Możliwe komunikaty: “określono nieprawidłowy typ dostawcy”.

W przypadku niepoprawnej ścieżki należy zainstalować odpowiednie certyfikaty dla głównego lub pośredniego urzędu certyfikacji.

4. Odinstalowanie i ponowne zainstalowanie oprogramowania wydawcy certyfikatu.

Możliwe komunikaty: “określono nieprawidłowy typ dostawcy”.

5. Uruchomienie lub zatrzymanie i uruchomienie Propagacja certyfikatu (CertPropSvc) Usługa ta kopiuje certyfikaty użytkownika i certyfikaty główne z kart inteligentnych do magazynu certyfikatów bieżącego użytkownika, wykrywa włożenie karty inteligentnej do czytnika oraz w razie potrzeby instaluje ministerownik Plug and Play karty.

6. Sprawdzenie zabezpieczeń sieci, w których pracuje użytkownik.

Adresy serwerów, do których należy mieć dostęp:

https://www.nccert.pl/ – adres dla nadrzędnego Centrum Certyfikacji w Polsce IP: 193.109.212.193 oraz IP: 195.85.196.193

Serwery dla certyfikatów wydawanych przez Centrum Certyfikacyjne Certum (serwery te są inne dla różnych centrów certyfikacyjnych):

https://cloudsign.webnotarius.pl – dla usługi chmurowej SimplySign
IP: 213.222.210.121

https://crl.certum.pl – ważność certyfikatu
IP: 213.222.198.210 oraz IP: 213.222.201.210

http://public-qlts.certum.pl/qts17– aktualny serwer znacznika czasu kwalifikowanego SHA-256
IP: 213.222.201.221 oraz IP: 213.222.198.221

Dodatkowo należy upewnić się, czy porty 443 i 80 są odblokowane/czynne, ponieważ na nich odbywa się bezpieczna komunikacja.

Możliwe komunikaty: “Nie można określić statusu certyfikatu”, “Żadna lista CRL nie jest dostępna dla podanego certyfikatu”.

Microsoft SQL Server Express LocalDB

Microsoft SQL Server LocalDB jest uproszczoną wersją systemu zarządzania bazą danych SQL Server Express. Jest ona prosta w instalacja i konfiguracji.

Garść ogólnych informacji

  • Podczas instalacji kopiowane są tylko niezbędne pliki niezbędne do uruchomienia silnika bazy danych SQL Server
  • Obsługuje ten sam język T-SQL jak w wersji SQL Server Express
  • Ma takie same ograniczenia jak wersja SQL Server Express

Dla kogo SQL Server Express LocalDB?

Kierowany jest głównie dla programistów.

Pozwala m.in. na:

  • Szybkie tworzenie lokalnych baz danych i wykonywanie testów aplikacji, które z nich korzystają,
  • Pisanie i testowanie kodu w języku Transact-SQL
  • poznanie SQL Server Express bez konieczności pełnej wersji

Lokalizacja plików z bazą danych

  • Rozszerzenia plików z bazą danych są takie same jak w SQL Server Express: .mdf (baza danych), .ldf (log)
  • Lokalizacja plików baz danych:
    • Bazy systemowe
      Bazy systemowe przechowywane są w lokalizacji określonej w zmiennej środowiskowej AppData:
      C:\Users\<user>\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\LocalDBApp1\
    • Bazy użytkownika przechowywane są w katalogu użytkownika, na przykład:
      C:\Users\Documents\
      C:\Users\

Zarządzanie instacjami – SQL Server Express LocalDB Command Line Tool

Do zarządzania instacjami baz danych służy program SQL Server Express LocalDB Command Line Tool uruchamiany z linii poleceń.

Program uruchamiany jest poprzez wpisanie w linii komend sqllocalDB z odpowiednimi parametrami.

Lista wszystkich instancji dostępnych na maszynie: sqllocalDB i

Szczegółowe informacje o instancji sql serwera:
sqllocalDB i <nazwa_instancji>

Parametry, jakich należy użyć do tworzenia, usuwania, uruchamiania i zatrzymywania instacji uzyskamy po uruchomieniu programu bez żadnych parametrów.

Numery wersji i nazwy wydań dostępne są m.in. na Wikipedii pod adresem: Microsoft SQL Server – Wikipedia, wolna encyklopedia

Instalacja

W celu zainstalowania Microsoft SQL Server Express LocalDB należy pobrać wersję instalacyjną programu ze strony firmy Microsoft.

https://www.microsoft.com/en-us/download/details.aspx?id=101064

Po pobraniu i uruchomieniu wersji instalacyjnej należy wybrać opcję Download Media

a następnie zaznaczyć opcję LocalDB

Po pomyślnym pobraniu należy wybrać przycisk “Open folder” i uruchomić pobrany plik instalacyjny “SqlLocalDB.msi”. Po jego uruchomieniu zostanie rozpoczęty proces instalacji SQL Server 2019 LocalDB.


Po pomyślnej instalacji możemy rozpocząć przygodę z relacyjnymi bazami danych 🙂

Dodatkowo warto zainstalować SQL Server Management Studio (SSMS).
Jest to narzędzie pozwalające na tworzenie zapytań i zarządzania bazami na komputerze lokalnym lub w chmurze.

Wersja instalacyjna dostępna jest pod następującym linkiem (na dzień tworzenia tego wpisu):

https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15

Drukowanie numeru nabywcy NIP na paragonie

Od 1 września 2019 obowiązywać będą przepisy według których będzie można wystawić fakturę do paragonu tylko w przypadku, gdy na paragonie będzie występował numer NIP nabywcy.

W związku z tym konieczne jest wprowadzenie zmian we wszystkich programach klasy ERP umożliwiających drukowanie numeru NIP nabywcy przez drukarkę fiskalną na paragonie.

W celu wprowadzenia odpowiednich zmian wypożyczyłem do testów drukarkę fiskalną firmy POSNET i przystąpiłem do wprowadzania zmian w oprogramowaniu ERP:

1. W drukarkach z nowym protokołem POSNET wprowadziłem możliwość drukowania numeru NIP nabywcy:

  • w dedykowanym do tego celu miejscu na paragonie poprzez wykorzystanie sekwencji ‘trnipset’. W sekwencji tej można określić, czy numer NIP ma być wyróżniony na paragonie (większa czcionka).
  • W linii, w której drukowany jest kod kasjera.

Przykładowe wydruki paragonów z numerem NIP nabywcy:

2. W drukarkach ze starszym protokołem THERMAL wprowadziłem możliwość drukowania numeru NIP nabywcy:

  • W dodatkowej linii drukowanej w stopce paragonu

Przygotowanie drukarki fiskalnej do testów 

Aby wykonać testy na drukarce fiskalnej POSNET (THERMAL XL2 z interfejsem USB) należało wykonać poniższe kroki.

  1. Zainstalować drukarkę i port drukarki w komputerze
    1. Po podłączeniu drukarki zostanie automatycznie zainstalowany port wirtualny
    2. Dodatkowo należy zainstalować sterownik drukarki dostarczony z drukarką lub pobrany ze strony producenta.
  2. Ustawić parametry drukarki w menu drukarki:

2. Konfiguracja – 1. Parametry ogólne – 7. Funkcje komunik.-> Interfejs PC

Interfejs PC:

  • należało wybrać USB (inne opcje to COM1, TCP/IP),
  • ustawić odpowiedni (np. nowy protokół POSNET),
  • Wybrać odpowiednią stronę kodową (np. strona kodowa: 1250).

3.  Za pomocą programu POSNET NPS:

    1. Zaprogramować nagłówek
    2. Wysłać stawki PTU do drukarki

Bez wykonania powyższych kroków drukarka zgłosi błędy o odpowiednich kodach opisanych w dokumentacji drukarki.

Przydatne programy

NPS – program serwisowy do drukarek fiskalnych POSNET.

Device Monitoring Studio – pomocny w przypadku wyjaśniania bardziej złożonych problemów związanych z komunikacją z drukarką. Program służy do monitorowania, logowania i analizowania danych wysyłanych i odbieranych przez porty PC.

Instalacja certyfikatów głównego i pośredniego urzędu certyfikacji w Windows 10

Instalacja zaufanego głównego urzędu certyfikacji: „Narodowe Centrum Certyfikacji (NCCert)”

oraz pośredniego urzędu certyfikacji: CERTUM QCA.

Poprawna ścieżka certyfikacji dla certyfikatu do podpisu elektronicznego powinna wyglądać następująco:

W przypadku gdy występuje problem podczas podglądu certyfikatu „system Windows nie ma wystarczającej informacji aby zweryfikować certyfikat” to należy sprawdzić ścieżkę certyfikacji i zainstalować brakujące lub ważne certyfikaty w magazynach certyfikatów:

  • Zaufany główny urząd certyfikacji:

certyfikat „Narodowe Centrum Certyfikacji (NCCert), dostępny na stronie http://www.nccert.pl/

Należy zainstalować go w magazynie „Zaufane główne urzędy certyfikacji”

  • Pośrednie urzędy certyfikacji:

na przykład CERTUM QCA (lub certyfikat innego centrum certyfikacyjnego)

dostępny na stronie: https://certum.pl/certum/cert,wiedza_zaswiadczenia_klucze_certum.xml#KUC

Należy zainstalować go w magazynie „Pośrednie urzędy certyfikacji”

Podczas instalacji certyfikatu „Narodowe Centrum Certyfikacji (NCCert) należy wskazać następujący magazyn certyfikatów:

Podczas instalacji certyfikatu pośredniego urzędu certyfikacji np. CERTUM QCA należy wskazać następujący magazyn certyfikatów:

Zarządzenie i podgląd certyfikatów w systemie Windows 10

Sposoby zarządzania certyfikatami w systemie Windows 10.

Sposób 1

Certyfikaty dla bieżącego użytkownika

  1. Wybierz Start i wpisz cmd
    (lub wybierz Start i uruchom)
  2. Wpisz certmgr

Certyfikaty dla urządzenia lokalnego

  1. Wybierz Start i wpisz cmd
    (lub wybierz Start i uruchom)
  2. Wpisz certlm

Sposób 2

  1. Wyświetlanie certyfikatów w przystawce programu MMC (Microsoft Management Console)

2.1 Wybierz Uruchom z menu Start i wprowadź „mmc”

LUB

Wybierz Uruchom z menu Start i wprowadź „cmd”. Następnie w konsoli wprowadź „mmc”

2.2. W menu programu „Plik” (File) w programie Microsoft Managment Console wybierz „Dodawanie/Usuwanie rozszerzeń” (Add/Remove Snap-in)


  • 2.3. Wybierz Cerificates i przycisk Dodaj (Add).
  • 2.4. Wybierz Moje konto użytkownika (My user account)
  • 2.5. Wybierz przycisk OK
  • 2.6. Po lewej stronie zostanie wyświetlona lista z kategoriami certyfikatów

W kontekście certyfikatów do podpisu elektronicznego lub podpisu kodu, istotne są następujące kategorie:

  • Certyfikaty osobiste (Personal Certificates)
  • Zaufane główne urządy certyfikacji (Trusted Root Certification Authorities)
  • Pośrednie urzędy certyfikacji (Intermediate Certification Authorities)

Certyfikaty osobiste (Personal Certificates)

Zaufane główne urządy certyfikacji (Trusted Root Certification Authorities)

Pośrednie urzędy certyfikacji (Intermediate Certification Authorities)

Materiały z prezentacji o Xamarin.Forms przeprowadzonej na spotkaniu GorzówIT #17 w dniu 14.03.2019

Poniżej umieściłem slajdy z prezentacji “Tworzenie cross-platformowych aplikacji w Xamarin.Forms – Wprowadzenie”, którą przeprowadziłem na spotkaniu GorzówIT w dniu 14.03.2019

XamarinForms_Wprowadzenie_TomaszGibulski

A tutaj przykładowy projekt utworzony podczas spotkania:

Projekt na GitHub

Problem z uzyskaniem adresu IP podczas łączenia się urządzenia mobilnego z systemem Android z routerem wifi.

Postanowiłem rozszerzyć i wzmocnić zasięg sieci wifi. Do istniejącej sieci podłączyłem kablem sieciowym router asmax N300RS w trybie access point. Sama konfiguracja i podłączenie routera przebiegło szybko. Niestety, podczas prób połączenia się z routerem z urządzenia z systemem Android 8.0 pojawiał się błąd „Failed to Obtain IP Address”.
Początkowo myślałem, że problem tkwi w routerze lub jego konfiguracji. Jak się jednak okazało, problem występował podczas łączenia się z wymienionym urządzeniem z systemem operacyjnym Android 8.0. Łączenie się z siecią z komputerów z systemem Windows 10 oraz innych urządzeń mobilnych z systemami Android (5.0 oraz 6.0) odbywało się bezproblemowo.

Jak się dowiedziałem przyczyn występowania tego problemu jest wiele. Zacząłem szukać rozwiązania tego problemu.

Wykonałem kilkukrotnie opcję „Zapomnij sieć” (po wybraniu i przytrzymaniu ikonki z siecią , z którą chcemy się należy wybrać opcję „Zapomnij sieć”). Niestety nie pomogło to w moim przypadku rozwiązać problemu.

Oto niektóre sposoby na poradzenie sobie z tym problemem, które sprawdziły się w moim przypadku:

  1. Włączenie i wyłączenie trybu samolotowego w urządzeniu mobilnym,
  2. Zresetowanie urządzenia mobilnego i routera
  3. Wprowadzenie statycznego numeru IP w urządzeniu mobilnym.
    Po wybraniu i przytrzymaniu ikonki z siecią, z którą chcemy się połączyć należy:

    • Wybrać opcję zarządzanie ustawieniami sieciowymi
    • Włączyć opcję „pokaż zaawansowane opcje”
    • Zmienić ustawienie IP z DHCP na Static
    • Wprowadzić adress IP (np. 192.168.1.121)
    • Wybrać przycisk Zapisz i sprawdzić, czy urządzenie połączy się z routerem Wifi.

Transfer Contacts from Lumia to Android’s device

It’s time to say goodbye to my Lumia 950. I get used to this smartphone but it’s high time to switch to Android’s device since Windows Phone is almost dead.
But how to transfer contact from Lumia to Android?
Fortunate there are a few ways to do that.

First way is to export contact Onedrive (https://outlook.live.com/people/) to csv file and then import it to gmail account (https://contacts.google.com/).

To transfer your contacts you can also use MobileTrans app. It’s convenient way but it’s not for free. You can download app from this address:  https://mobiletrans.wondershare.com/

Maps API dla programistów: Google Maps Platform and Microsoft Bing Maps.

Największe platformy pozwalające na wykorzystanie map i wyszukiwanie na nich lokalizacji:

  • Google Maps Platform
  • Microsoft Bing Maps

Poniżej zebrałem linki dotyczące każdej z tych platform.

Google Maps Platform

Google Maps Platform

https://cloud.google.com/maps-platform/

 

Google Maps Platform – Documentation

https://developers.google.com/maps/documentation/

https://cloud.google.com/maps-platform/user-guide/

 

Google Maps Platform – Pricing

https://cloud.google.com/maps-platform/pricing/

 

Google Maps Platform – previous Pricing and Plans

https://developers.google.com/maps/previous-pricing

 

Microsoft Bing Maps

Bing Maps Portal

https://www.bingmapsportal.com/

Bing Maps – Documentation

https://www.microsoft.com/en-us/maps/documentation

 

Bing Maps – Pricing – Basic Key

https://www.microsoft.com/en-us/maps/create-a-bing-maps-key

https://www.microsoft.com/en-us/maps/licensing/default

 

Bing Maps – Licensing options

https://www.microsoft.com/en-us/maps/licensing/options

 

Creating a Bing Maps Account

https://msdn.microsoft.com/pl-pl/library/gg650598.aspx?f=255&MSPPError=-2147217396

 

Uruchamianie systemu Windows w trybie i bez trybu Hypervisor

W celu uruchamiania systemu Windows 10 w trybie hypervisor lub bez niego możemy dodać nową opcję uruchamiana do bootloader’a systemu, która nam pozwoli na uruchamianie systemu:

– z włączonym trybem Hypervisor potrzebnym aby uruchamiać wirtualne maszyny w Hyper-V.

– z wyłączonym trybem Hypervisor pozwalającym na uruchomienie silnika HAXM, z którego korzystają wirtualne maszyny Google.

 

W celu dodania dodatkowej opcji uruchamiania do multi-boot setup należy wykonać poniższe kroki.

  1. Uruchomić wiersz poleceń w trybie administratora (“Uruchom jako administrator”:

 

2. Wprowadzić i uruchomić komendę:

bcdedit /copy {current} /d “Microsoft Windows 10 – no hypervisor”

Polecenie to utworzy nową opcję uruchamiania systemu „boot entry”, nada jej identyfikator i opis.

 

3. Wprowadzić i uruchomienić komendę:

bcdedit /set {identyfikator zwrócony w poprzedniej komendzie} hypervisorlaunchtype off

Przykład:
bcdedit /set {4c5b8917-f160-11e7-9437-9d9f3382403d} hypervisorlaunchtype off

Polecenie to wyłączy tryb hypervisor w utworzonej w poprzednim kroku nowej opcji uruchamiania systemu Windows.

Po wykonaniu polecenia bcdedit pojawi się lista istniejących wpisów uruchamiania w booloaderze Windows.

Wpis wyróżniony numerm 2 został dodany w poprzednich krokach.


 

4. Na koniec można ustawić opcję, która ma być domyślnie wybierana podczas uruchamiania systemu Windows:

bcdedit /default {identyfikator zwrócony w poprzedniej komendzie}

Przykład:
bcdedit /default {4c5b8917-f160-11e7-9437-9d9f3382403d}