epub2pdf 사용과 관련된 잠재적인 보안 위험이 있습니까? 다른 옵션이 있나요?

epub2pdf 사용과 관련된 잠재적인 보안 위험이 있습니까? 다른 옵션이 있나요?

epub2pdf플랫폼 독립적인 프로그램입니다. Java를 기반으로 하며 종속성 없이 내 컴퓨터에서 원활하게 실행됩니다.

그러나 이상하게도 프로그램이 제대로 작동하려면 활성 인터넷 연결이 필요합니다. 처음에는 이 사실을 깨닫지 못했는데,해당 프로그램의 웹사이트에는 해당 프로그램이 "온라인" 변환기의 프런트엔드일 뿐이라는 내용이 나와 있지 않습니다.

이게 정상인가요?

이거 사생활 침해 아닌가요?

이 프로그램이 왜필요외부 서버에 대한 HTTP 연결을 설정하시겠습니까?

또한 이 프로그램은 Debian/Ubuntu 리포지토리에서 사용할 수 없습니다.

이것이 이 질문과 관련이 있나요?

누군가 대안을 제안할 수 있습니까?

인터넷 연결 없이 실행할 때 발생하는 오류는 다음과 같습니다.

me@ROOROO:~/epub2pdf$ ./epub2pdf.sh adventures_in_dev_null.epub 
epub2pdf v0.5 - Copyright (C) 2010  Brendan C. Lefebvre
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions.
See file 'COPYING' for full license and warranty details.


Registered font families: courier, helvetica, symbol, times, times-roman, zapfdingbats
Default font set to helvetica
Default font base size set to 12.0pt
Default monospace font: courier
Monospace base size: 10.0pt
Default paragraph alignment: left
Margins (top right bottom left): 4.00mm 4.00mm 4.00mm 4.00mm 
Page size (w x h): 90.00mm x 115.00mm
Converting ~/epub2pdf/adventures_in_dev_null.epub
java.net.UnknownHostException: www.daisy.org
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:175)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
        at java.net.Socket.connect(Socket.java:546)
        at java.net.Socket.connect(Socket.java:495)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:178)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:409)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:530)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:240)
        at sun.net.www.http.HttpClient.New(HttpClient.java:321)
        at sun.net.www.http.HttpClient.New(HttpClient.java:338)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:935)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:876)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:801)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1139)
        at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
        at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at com.amphisoft.epub.metadata.Ncx.fromFile(Unknown Source)
        at com.amphisoft.epub.Epub.populateMemberFields(Unknown Source)
        at com.amphisoft.epub.Epub.setFile(Unknown Source)
        at com.amphisoft.epub.Epub.setFile(Unknown Source)
        at com.amphisoft.epub.Epub.fromFile(Unknown Source)
        at com.amphisoft.epub2pdf.Converter.convert(Unknown Source)
        at com.amphisoft.epub2pdf.Converter.main(Unknown Source)
        at com.amphisoft.epub2pdf.Epub2Pdf.main(Unknown Source)
Writing PDF to /home/user/adventures_in_dev_null.pdf
Processing 22 HTML file(s): 
.java.net.UnknownHostException: www.w3.org
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:175)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
        at java.net.Socket.connect(Socket.java:546)
        at java.net.Socket.connect(Socket.java:495)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:178)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:409)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:530)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:240)
        at sun.net.www.http.HttpClient.New(HttpClient.java:321)
        at sun.net.www.http.HttpClient.New(HttpClient.java:338)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:935)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:876)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:801)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1139)
        at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:654)
        at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1292)
        at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1229)
        at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.startPE(XMLDTDScannerImpl.java:699)
        at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.skipSeparator(XMLDTDScannerImpl.java:2046)
        at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.scanDecls(XMLDTDScannerImpl.java:2009)
            at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.scanDTDExternalSubset(XMLDTDScannerImpl.java:297)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1178)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1065)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:978)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at org.apache.xml.resolver.tools.ResolvingXMLFilter.parse(ResolvingXMLFilter.java:141)
        at com.amphisoft.epub2pdf.content.XhtmlHandler.parseXhtml(Unknown Source)
        at com.amphisoft.epub2pdf.content.XhtmlHandler.<init>(Unknown Source)
        at com.amphisoft.epub2pdf.content.XhtmlHandler.process(Unknown Source)
        at com.amphisoft.epub2pdf.Converter.convert(Unknown Source)
        at com.amphisoft.epub2pdf.Converter.main(Unknown Source)
        at com.amphisoft.epub2pdf.Epub2Pdf.main(Unknown Source)
Exception converting adventures_in_dev_null.epub:
        ExceptionConverter at:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
        at com.amphisoft.epub2pdf.Converter.main(Unknown Source)
        at com.amphisoft.epub2pdf.Epub2Pdf.main(Unknown Source)

답변1

Java 소스 코드를 보면 이러한 연결은 무해한 것으로 보입니다. 그들의 목적은 검색하는 것입니다DOM그리고DTD이 프로그램은 책 형태의 파일을 처리합니다. Z39.86예를 들어, 디지털 오디오북 사양입니다. 프로그래머로서 필요한 파일을 번들로 묶는 대신 이러한 네트워크 종속성을 응용 프로그램에 넣는 것이 이상하게 보이지만 제가 인식하지 못하는 저작권이나 라이센스 문제가 있을 수 있습니다.

관련 정보