{"id":369,"date":"2009-07-23T22:16:02","date_gmt":"2009-07-23T20:16:02","guid":{"rendered":"http:\/\/konstantin.filtschew.de\/blog\/?p=369"},"modified":"2009-10-08T21:36:06","modified_gmt":"2009-10-08T19:36:06","slug":"mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen","status":"publish","type":"post","link":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/","title":{"rendered":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen"},"content":{"rendered":"<p>Nach etwas Arbeit habe ich den <a title=\"Linuxnet Seite mit diversen Softwarekomponenten\" href=\"http:\/\/www.linuxnet.com\/middle.html\">JPCSC<\/a> Wrapper in der Version 0.8.0 f\u00fcr PCSC unter Ubuntu Jaunty 9.04 zum laufen gebracht. Daf\u00fcr waren diverse \u00c4nderungen am Quellcode von JPCSC notwendig, die ich zuerst beschreibe.<\/p>\n<p>Die folgenden Pakete m\u00fcssen zuerst auf dem System installiert werden:<br \/>\n[code]<br \/>\nsudo aptitude install sun-java6-jdk libpcsclite-dev libpcsclite1<br \/>\n[\/code]<\/p>\n<p>Danach muss <a title=\"Linuxnet Seite mit diversen Softwarekomponenten\" href=\"http:\/\/www.linuxnet.com\/middle.html\">JPCSC<\/a> von der <a title=\"Linuxnet Seite mit diversen Softwarekomponenten\" href=\"http:\/\/www.linuxnet.com\/middle.html\">Linuxnet.com<\/a> Seite runtergeladen und entpackt werden. Das Erstellen mit dem Befehl &#8222;make&#8220; wird nicht funktionieren, weil diverse Header-Dateien von PCSC nicht in dem Standard-Pfad \/usr\/include\/ liegen, sondern in dem Pfad \/usr\/include\/PCSC\/.<\/p>\n<p>Die folgenden Header-Dateien sind davon betroffen:<br \/>\n[code]<br \/>\nifdhandler.h<br \/>\npcsclite.h<br \/>\nreader.h<br \/>\nwinscard.h<br \/>\nwintypes.h<br \/>\n[\/code]<\/p>\n<p>Um dieses Problem zu l\u00f6sen, ist es am Einfachsten die Bibliotheken in dem Pfad \/usr\/include zu verlinken. Dazu sollten die folgenden Befehle reichen:<\/p>\n<p>[code]<br \/>\ncd \/usr\/include<br \/>\nsudo ln -s PCSC\/ifdhandler.h ifdhandler.h<br \/>\nsudo ln -s PCSC\/pcsclite.h pcsclite.h<br \/>\nsudo ln -s PCSC\/reader.h reader.h<br \/>\nsudo ln -s PCSC\/winscard.h winscard.h<br \/>\nsudo ln -s PCSC\/wintypes.h wintypes.h<br \/>\n[\/code]<\/p>\n<p>Zus\u00e4tzlich muss die Zeile 769 in der Datei <em>jpcsc\/src\/jpcsc\/jpcsc.c<\/em> angepasst werden, weil sie nicht mehr dem Aufruf aus der pcsc-Bibliothek passt:<\/p>\n<p>[code]<br \/>\n< \u00a0\u00a0\u00a0\u00a0 rv =\u00a0 SCardControl(card, cin + joff, jlen, cout, &#038;clen);\n---\n>\u00a0\u00a0\u00a0\u00a0 rv =\u00a0 SCardControl(card, SCARD_CTL_CODE(jcc), cin + joff, jlen, cout, clen, &#038;clen);<br \/>\n[\/code]<\/p>\n<p>Also &#8222;SCardControl(card, cin + joff, jlen, cout, &#038;clen);&#8220; ersetzen durch &#8222;SCardControl(card, SCARD_CTL_CODE(jcc), cin + joff, jlen, cout, clen, &#038;clen);&#8220;.<\/p>\n<p>Danach sollte es m\u00f6glich sein den Code zu erstellen.<\/p>\n<p>Um \u00fcber den Wrapper auf die Bibliothek zuzugreifen, muss die Bibliothek jpcsc.so und jpcsc.jar \u00fcber den folgenden Parameter verlinkt werden. Der folgenden Parameter muss dem Aufruf vor der Ausf\u00fchrung als Parameter direkt \u00fcbergeben werden:<\/p>\n<p>[code]<br \/>\njava -Djava.library.path=lib\/ Test<br \/>\n[\/code]<\/p>\n<p>In dem von mir gezeigten Beispiel m\u00fcssen die beiden Dateien &#8222;jpcsc.so&#8220; und &#8222;jpcsc.jar&#8220; in den Ordner &#8222;lib\/&#8220; gelegt werden, damit sie angesteuert werden.<\/p>\n<p>Unter Eclipse muss unter &#8222;Run as &#8220; unter Configurations nur der Parameter bei VM-Arguments eingetragen werden:<\/p>\n<p>[code]<br \/>\n-Djava.library.path=lib\/<br \/>\n[\/code]<\/p>\n<p>Beispielcode:<\/p>\n<p>[code]<br \/>\nimport com.linuxnet.jpcsc.*;<\/p>\n<p>public class JPCSCUsecase {<\/p>\n<p>\tpublic JPCSCUsecase() {<br \/>\n\t\ttry {<br \/>\n\t\t\tContext context = new Context();<br \/>\n\t\t\tcontext.EstablishContext(PCSC.SCOPE_GLOBAL, null, null);<\/p>\n<p>\t\t\tString[] readers = context.ListReaders();<br \/>\n\t\t\tif (readers.length <= 0) {\n\t\t\t\tSystem.err.println(\"No readers found...\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\t\/\/Talk to the first reader = 0\n\t\t\tString reader = readers[0]; \n\t\t\tSystem.out.println(\"Using reader \" + reader);\n\t\t\t\n\t\t\tCard card = context.Connect(reader);\n\t\t\tcard.BeginTransaction();\n\n\t\t\t\/\/Do something with APDUS\n\t\t\tSystem.out.println(\"APDU: \"+ readApduInfo(card));\n\t\t\t\n\t\t\tcard.EndTransaction(PCSC.RESET_CARD);\n\t\t\tcard.Disconnect();\n\t\t\t\n\t\t\tcontext.ReleaseContext();\n\t\t} catch (Exception e) {\n\t\t\te.printStackTrace();\n\t\t}\n\t}\n\t\n\tprivate String readApduInfo(Card card) {\n\t\tApdu apdu = new Apdu((byte) 0x20, (byte) 0x13, (byte) 0x00, (byte) 0x81, 0, null, 0, 5);\n\t\tbyte[] data = card.Transmit(apdu);\n\t\treturn bytesToString(data);\n\t}\n\n\tprivate String bytesToString(byte[] bytes) {\n\t\tString output = \"\";\n\t\t\n\t\tfor (int i = 0; i < bytes.length; i++) {\n\t\t\toutput += \"0x\"+bytes[i]+ \" \";\n\t\t}\n\t\treturn output;\n\t}\n\t\n\tpublic static void main(String[] arg) {\n\t\tnew JPCSCUsecase();\n\t}\n}\n[\/code]\n\nEigentlich ist es besser und vor allem einfacher \u00fcber die Implementierung von javax.smartcardio.* zuzugreifen. Weitere Informationen folgen noch.\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nach etwas Arbeit habe ich den JPCSC Wrapper in der Version 0.8.0 f\u00fcr PCSC unter Ubuntu Jaunty 9.04 zum laufen gebracht. Daf\u00fcr waren diverse \u00c4nderungen am Quellcode von JPCSC notwendig, die ich zuerst beschreibe. Die folgenden Pakete m\u00fcssen zuerst auf dem System installiert werden: [code] sudo aptitude install sun-java6-jdk libpcsclite-dev libpcsclite1 [\/code] Danach muss JPCSC [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22,3],"tags":[],"class_list":["post-369","post","type-post","status-publish","format-standard","hentry","category-java","category-linux"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew\" \/>\n<meta property=\"og:description\" content=\"Nach etwas Arbeit habe ich den JPCSC Wrapper in der Version 0.8.0 f\u00fcr PCSC unter Ubuntu Jaunty 9.04 zum laufen gebracht. Daf\u00fcr waren diverse \u00c4nderungen am Quellcode von JPCSC notwendig, die ich zuerst beschreibe. Die folgenden Pakete m\u00fcssen zuerst auf dem System installiert werden: [code] sudo aptitude install sun-java6-jdk libpcsclite-dev libpcsclite1 [\/code] Danach muss JPCSC [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/\" \/>\n<meta property=\"og:site_name\" content=\"Konstantin Filtschew\" \/>\n<meta property=\"article:published_time\" content=\"2009-07-23T20:16:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2009-10-08T19:36:06+00:00\" \/>\n<meta name=\"author\" content=\"Konstantin Filtschew\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fa11enangel\" \/>\n<meta name=\"twitter:site\" content=\"@fa11enangel\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Konstantin Filtschew\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"2\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/\"},\"author\":{\"name\":\"Konstantin Filtschew\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#\\\/schema\\\/person\\\/de09aadf27dd3b71cb0030f6f2214b1e\"},\"headline\":\"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen\",\"datePublished\":\"2009-07-23T20:16:02+00:00\",\"dateModified\":\"2009-10-08T19:36:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/\"},\"wordCount\":398,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#\\\/schema\\\/person\\\/de09aadf27dd3b71cb0030f6f2214b1e\"},\"articleSection\":[\"Java\",\"Linux\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/\",\"url\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/\",\"name\":\"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#website\"},\"datePublished\":\"2009-07-23T20:16:02+00:00\",\"dateModified\":\"2009-10-08T19:36:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/2009\\\/07\\\/23\\\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/\",\"name\":\"Konstantin Filtschew\",\"description\":\"Der t\u00e4gliche IT-Wahnsinn\",\"publisher\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#\\\/schema\\\/person\\\/de09aadf27dd3b71cb0030f6f2214b1e\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/#\\\/schema\\\/person\\\/de09aadf27dd3b71cb0030f6f2214b1e\",\"name\":\"Konstantin Filtschew\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/KFLogo1.png\",\"url\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/KFLogo1.png\",\"contentUrl\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/KFLogo1.png\",\"width\":222,\"height\":193,\"caption\":\"Konstantin Filtschew\"},\"logo\":{\"@id\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/KFLogo1.png\"},\"description\":\"Building an operation system without source code, is like buying a self assemble space shuttle without instructions. (Author unknown)\",\"sameAs\":[\"https:\\\/\\\/konstantin.filtschew.de\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/konstantin-filtschew-b7138019\\\/\",\"https:\\\/\\\/x.com\\\/fa11enangel\"],\"url\":\"https:\\\/\\\/konstantin.filtschew.de\\\/blog\\\/author\\\/konstantin-filtschew\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/","og_locale":"de_DE","og_type":"article","og_title":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew","og_description":"Nach etwas Arbeit habe ich den JPCSC Wrapper in der Version 0.8.0 f\u00fcr PCSC unter Ubuntu Jaunty 9.04 zum laufen gebracht. Daf\u00fcr waren diverse \u00c4nderungen am Quellcode von JPCSC notwendig, die ich zuerst beschreibe. Die folgenden Pakete m\u00fcssen zuerst auf dem System installiert werden: [code] sudo aptitude install sun-java6-jdk libpcsclite-dev libpcsclite1 [\/code] Danach muss JPCSC [&hellip;]","og_url":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/","og_site_name":"Konstantin Filtschew","article_published_time":"2009-07-23T20:16:02+00:00","article_modified_time":"2009-10-08T19:36:06+00:00","author":"Konstantin Filtschew","twitter_card":"summary_large_image","twitter_creator":"@fa11enangel","twitter_site":"@fa11enangel","twitter_misc":{"Verfasst von":"Konstantin Filtschew","Gesch\u00e4tzte Lesezeit":"2\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/#article","isPartOf":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/"},"author":{"name":"Konstantin Filtschew","@id":"https:\/\/konstantin.filtschew.de\/blog\/#\/schema\/person\/de09aadf27dd3b71cb0030f6f2214b1e"},"headline":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen","datePublished":"2009-07-23T20:16:02+00:00","dateModified":"2009-10-08T19:36:06+00:00","mainEntityOfPage":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/"},"wordCount":398,"commentCount":6,"publisher":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/#\/schema\/person\/de09aadf27dd3b71cb0030f6f2214b1e"},"articleSection":["Java","Linux"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/","url":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/","name":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen - Konstantin Filtschew","isPartOf":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/#website"},"datePublished":"2009-07-23T20:16:02+00:00","dateModified":"2009-10-08T19:36:06+00:00","breadcrumb":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/konstantin.filtschew.de\/blog\/2009\/07\/23\/mit-java-uber-jpcsc-auf-den-smartcardreader-und-die-smartcard-unter-linux-zugreifen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/konstantin.filtschew.de\/blog\/"},{"@type":"ListItem","position":2,"name":"Mit Java \u00fcber JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen"}]},{"@type":"WebSite","@id":"https:\/\/konstantin.filtschew.de\/blog\/#website","url":"https:\/\/konstantin.filtschew.de\/blog\/","name":"Konstantin Filtschew","description":"Der t\u00e4gliche IT-Wahnsinn","publisher":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/#\/schema\/person\/de09aadf27dd3b71cb0030f6f2214b1e"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/konstantin.filtschew.de\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":["Person","Organization"],"@id":"https:\/\/konstantin.filtschew.de\/blog\/#\/schema\/person\/de09aadf27dd3b71cb0030f6f2214b1e","name":"Konstantin Filtschew","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/konstantin.filtschew.de\/blog\/wp-content\/uploads\/2025\/10\/KFLogo1.png","url":"https:\/\/konstantin.filtschew.de\/blog\/wp-content\/uploads\/2025\/10\/KFLogo1.png","contentUrl":"https:\/\/konstantin.filtschew.de\/blog\/wp-content\/uploads\/2025\/10\/KFLogo1.png","width":222,"height":193,"caption":"Konstantin Filtschew"},"logo":{"@id":"https:\/\/konstantin.filtschew.de\/blog\/wp-content\/uploads\/2025\/10\/KFLogo1.png"},"description":"Building an operation system without source code, is like buying a self assemble space shuttle without instructions. (Author unknown)","sameAs":["https:\/\/konstantin.filtschew.de","https:\/\/www.linkedin.com\/in\/konstantin-filtschew-b7138019\/","https:\/\/x.com\/fa11enangel"],"url":"https:\/\/konstantin.filtschew.de\/blog\/author\/konstantin-filtschew\/"}]}},"_links":{"self":[{"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/posts\/369","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/comments?post=369"}],"version-history":[{"count":12,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/posts\/369\/revisions"}],"predecessor-version":[{"id":409,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/posts\/369\/revisions\/409"}],"wp:attachment":[{"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/media?parent=369"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/categories?post=369"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/konstantin.filtschew.de\/blog\/wp-json\/wp\/v2\/tags?post=369"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}