The present invention generally relates to the field of media content protection. More particularly, the disclosed embodiments relate to device authentication when content is screened in a collaborative manner among multiple media devices.
This section is intended to provide a background or context to the disclosed embodiments that are recited in the claims. The description herein may include concepts that could be pursued, but are not necessarily ones that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, what is described in this section is not prior art to the description and claims in this application and is not admitted to be prior art by inclusion in this section.
Content screening operations, including watermark extraction and the application of content usage enforcement actions, may be organized such that some or all of the operations can be conducted by different connected devices.
This section is intended to provide a summary of certain exemplary embodiments and is not intended to limit the scope of the embodiments that are disclosed in this application.
One aspect of the disclosed embodiments relates to a method for device authentication in collaborative content screening. The method includes providing source and sink devices for receiving content. The sink device verifies that the source device is capable and trusted to provide correct content credential and content use policy needed for the sink device to determine whether content screening should be performed and what content screening operation should be performed.
These and other advantages and features of disclosed embodiments, together with the organization and manner of operation thereof, will become apparent from the following detailed description when taken in conjunction with the accompanying drawings.
In the following description, for purposes of explanation and not limitation, details and descriptions are set forth in order to provide a thorough understanding of the disclosed embodiments. However, it will be apparent to those skilled in the art that the present invention may be practiced in other embodiments that depart from these details and descriptions.
Additionally, in the subject description, the word “exemplary” is used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word exemplary is intended to present concepts in a concrete manner.
Content screening operations, which can include watermark extraction and the application of content usage enforcement actions, may be organized such that some or all of the operations can be conducted by different devices that are connected via connectors such as High-Definition Multimedia Interface (HDMI), analog composite video, DVI (Digital Visual Interface), SDI (Serial Digital Interface), DisplayPort, or networked via Ethernet or wireless. Such collaborative content screening performed by more than one device is extensively disclosed in U.S. Pat. Nos. 8,838,977 and 9,607,131, the contents of which are hereby incorporated by reference.
This disclosure describes the authentication and encryption methods under the following architecture that can be used to establish the trust and secure communication between devices that conduct collaborative content screening.
A source device (e.g., a set-top box, OTT box) receives content from a content source and outputs the content to a sink device. A sink device such as a TV set receives the content from the source device and may present (or copy or move) the received content. A device can be a source device and a sink device if it receives content from a sink device and also outputs the content to a sink device.
Content credential and use policy (“content credential”) may contain the following information:
The sink device may determine screening obligation based on one or combined information described above in the content credential. The content credential is securely sent to the sink device once source authentication process is completed. When certain information of the content credential such as content source type or content protection system changes, the source device is required to securely send the content credential again or an update.
DRM Security Levels
Each DRM (playready, widevine, and fairplay) have security levels for their devices that describe what level of security they support. Content owners can then license content instances for devices of a particular security level. A DRM may need to create a new security level for Cinavia for TV. So, this way we have the content provider that watermarks the content and DRM protects the content. Then the license server can know that it will only license Cinavia watermarked content to devices that have the Cinavia security level. This means the playback device supports Cinavia for TV and can then provide a Cinavia enabled TV with the proper credentials to be an authenticated source, in other words the device is capable of passing the Cinavia Source Authentication. If a DRM license server licensed content to a playback device that did not support Cinavia for TV and the content is Cinavia watermarked, then a Cinavia enabled TV would disallow playback and enforce stopping playback when the playback device(source) failed the Cinavia Source Authentication. This would be a bad experience for users because they would get a lot of enforcements. f the license server knew that the playback device was not of the Cinavia security level, then depending on the choices the content provider chooses to make, they could deliver a version of the content (or content instance) that was of a lower quality that did not require Cinavia for TV Source Authentication.
Widevine defines their security levels like this:
Security Level 1: All content processing, cryptography, and control is performed within the Trusted Execution Environment (TEE). In some implementation models, security processing may be performed in different chips.
Security Level 2: Performs cryptography (but not video processing) within the TEE: decrypted buffers are returned to the application domain and processed through separate video hardware or software. At level 2, however, cryptographic information is still processed only within the trusted execution environment.
Security Level 3: Does not have a TEE on the device. Appropriate measures may be taken to protect the cryptographic information and decrypted content on host operating system. A Level 3 implementation may also include a hardware cryptographic engine, but that only enhances performance, not security.
In many cases, such as Movielabs requirements, content owners require their highest value content (highest quality, first run, etc.) to only be licensed to Security Level 1 devices those devices must only output to a sync over HDCP 2.2 (latest version). So, this is an area that we can attach the Cinavia security level to. We may apply it to ATSC3 in a similar way that security levels are applied to Movielabs.
Source Authentication Architecture
A source authentication architecture is described in this section.
Challenges
Solution Architecture
Solution Description
ATSC 1.0 broadcasts must remain unwatermarked and will never receive watermark protection. The quality of these broadcasts will be progressively downgraded as the ATSC 3.0 transition progresses, reducing their attractiveness to pirates and differentiating them from protected content, and will ultimately be cut off, removing the threat.
Broadcasters can encrypt ATSC 3.0 services with SACT protection and embed them with TS/SA watermark state. Broadcasters can establish compliance rules that include a screening obligation for client devices that include decryption capabilities. These devices will block playback of pirated ATSC 3 content from all inputs and can refer blocked pirates to legitimate sources.
MVPD/vMVPD services may be watermarked with TS/NoSA if they are using TSMAT protection or TS/SA if they are using SACT protection. TS/NoSA content will be subject to a laundry channel attack, since a legitimate source (e.g. BD Player) and pirate source (e.g. Kodi box) cannot be distinguished by a sink device via link protection. Broadcasters can tier the quality of the content provided to these services in the same way they do with ATSC 3 & ATSC 1. MVPD/vMVPD service providers should be motivated to offer high quality content and address piracy which undermines their business.
Pressure from MVPD/vMVPD service providers and broadcasters will be necessary to cause the platforms (DRM, OS) to transition from TSMAT to SACT protection.
Several authentication and secure communication methods for source authentication architecture are described below.
Cinavia Signed Message for Source Authentication
This source authentication method takes advantage of DTCP (see http:://www.dtcp.com) device certificate that are widely available on the source devices such as set-top box and gateway device. It requires that the source device has a DTCP device certificate.
A Cinavia signed message is created with information associated with a DTCP device certificate. A Cinavia signed message consists of at least the data to be signed and a digital signature of the data signed by Cinavia Certificate Authority (“Cinavia CA”) using a digital algorithm such as RSA or EC-DSA. Cinavia signed message can be compliant with IETF RFC 5652 “Cryptographic Message Syntax” (CMS) (https://tools.ietf.org/html/rfc5652).
The data to be signed include at least the Device ID in the DTCP device certificate and may also include the following fields:
Source and Sink Devices Connected Via HDMI
If the source and sink devices are connected via HDMI or other connectors such as DVI or DisplayPort, HDCP is likely used for link protection, the source authentication takes place immediately after HDCP authentication and key exchange process.
As shown in
Optionally, the Cinavia signed message can be encrypted using sink device's DTCP private key before it is sent to the sink device.
Once the sink device receives the encrypted content credential and Cinavia signed message, it performs the following steps:
For legacy source device with Common DTCP Device Certificate to be Source Authentication (SA) compliant, it must be updated with a DTCP Device Certificate with a unique Device ID and an associated Cinavia signed message.
Networked Source and Sink Devices
If the source and sink devices are connected via network (e.g., Ethernet or wireless), DTCP is likely used for link protection, the source authentication takes place immediately after DTCP authentication and key exchange process.
As shown in
Once the sink device receives the encrypted content credential and Cinavia signed message, it
Optionally, the Cinavia signed message can be encrypted using current Content Key (Kc) before it is sent to the sink device.
It is assumed that the source device certificate is available to the sink device after the full DTCP authentication. Optionally, the source device can send its DTCP certificate together with encrypted content credential and Cinavia signed message to the sink device for source authentication.
Screening Operations
As shown in
Once the sink device receives a content credential from the source device, it continues NHU screening, and additionally performs TS screening or SA screening in accordance with content credential.
For legacy source device with Common DTCP Device Certificate to be SA compliant, it must be updated with a DTCP Device Certificate with a unique Device ID and associated Cinavia signed message.
If the content credential contains pre-existing watermark extraction record of the received content, the sink device performs verification of the watermark extraction record and enforcement in accordance with the extraction record without performing watermark extraction from the received content.
Source Authentication Flag in DTCP Source Device Certificate
This source authentication method requires an extension of DTCP device certificate or an extension of both DTCP and HDCP certificate by defining a Source Authentication (SA) flag in the HDCP or DTCP device certificate to indicate that the HDCP or DTCP link protection is only enabled by the source device for SACT content. The source device with the device certificate containing the SA flag that is set to true should not enable the link protection for non-SACT content.
The source and sink devices support both HDCP and DTCP, and SA flag in DTCP device certificate but not in HDCP device certificate
The source and sink devices support both HDCP and DTCP, and SA flag in both DTCP and HDCP device certificate
Cinavia Public Key Device Certificate for Source Authentication
This SA method requires that a unique public key device certificate (“Cinavia device certificate”) signed and issued by Cinavia CA (Certificate Authority) for each source device.
Cinavia device certificate can be an X509 public key certificate or in a proprietary format (e.g., in a format similar to DTCP device certificate).
Once HDCP or DTCP link protection is established, the source device:
Once the sink device receives the Cinavia device certificate and encrypted content credential, it:
When certain information in content credential changes on the source device, the sink device sends encrypted content credential to the sink device as described above.
Cinavia CA as a DTCP Device CA designated by Digital Transmission Licensing Administrator (DTLA) for source authentication.
DTCP2 (See http://www.dtcp.com) supports 2-level PKI certification authority hierarchies. DLTA can delegate the right to a DTCP Device CAs (a subordinate CA of DLTA) to issue DTCP Device Certificates. See www.dtcp.com for details regarding DTLA. The general benefits of 2-level CA include flexibility and distributed load to issue device certificates, and reduced risk and cost for failed or compromised CA.
The following rule is required to be defined by DLTA for the DTCP Device Certificates issued by Cinavia Device CA:
Message Exchange in Source Authentication
Display Data Channel (DDC) Channel Via HDMI
If the source and sink devices are connected via HDMI, an E-EDID (Enhanced Extended Display Identification Data) extension over Display Data Channel (DDC) can be used for communication in source authentication.
One segment between the E-EDID segment 1 and the E-EDID segment 255 can be used for the source device to send the authentication information (including DTCP source device certificate and associated Cinavia signed message, Cinavia public key device certificate, and content credentials) to the sink device for source authentication.
Digital Watermarks
Source authentication requires only one-way communication from the source device to sink device. The source device can use digital audio and/or video watermarks to transmit the information to the sink device for source authentication.
Once the DTCP or HDCP authentication is completed or when certain information in content credential changes on the source device, the source device first encrypts the information for source authentication using a cryptographic key established during the authentication (either the Content Key or the sink device's public key). The source device then embeds the encrypted information in the audio and/or video content being transmitted from the source device to the sink device.
On the sink device, it continuously monitors if watermarks are present. If presence of the watermarks is detected, the sink device extracts the encrypted information carried in the watermarks and decrypts the encrypted information using the key to obtain the information used for the source authentication.
An exemplary watermarking system that can be used for carrying the source authentication information is ATSC 3.0 video watermark as defined in ATSC 3.0 Standard: Content Recovery in Redistribution Scenarios, A/336, which is incorporated herein by reference. For example, a User Private Message defined in this ATSC 3.0 A/336 standard can be used to convey the authentication information in video watermarks.
Device Certificate Revocation
Both HDCP and DTCP CAs can revoke the device certificates using SRMs as described in https://www.dtcp.com and https://www.digital-cp.com, respectively.
In addition, Cinavia CA can create its own SRMs for revocation of device certificates (either DTCP source device certificates or Cinavia source device certificate). The SRMs are signed by Cinavia CA using Cinavia CA's private key.
Alternatively, Cinavia CA can designate the revocation to another entity (e.g., using cross certification). For example, the SRMs can be signed using a digital certificate signed by an ATSC 3.0 CA that is chained to an ATSC 3.0 Root CA, and then signed again by the Cinavia CA. SRMs can be distributed as an ATSC 1.0 or ATSC 3.0 signaling file. (see ATSC 1.0 A/98 “System Renewability Message Transport” at www.atsc.org), which is hereby incorporated by reference.
The sink device is required to manage and process SRMs during source authentication. If the source device ID (in DTCP device certificate or in the Cinavia public device certificate) is present in a valid SRM, the source authentication fails.
SRMs may be delivered to either source or sink devices. When the SRMs are delivered to the source device, it should transmit the SRMs to the sink device during or prior to source authentication.
Whitelist and Blacklist of Content Sources and SACT Update
If content source of the received content is available in content credential, the sink device compares the content source with a whitelist and/or a blacklist of content sources. If it matches with one of the content sources in the whitelist, SA content screening is not performed. On the other hand, if it matches with one of the content sources in the blacklist, SA content screening is performed.
Both whitelist and blacklist are signed by Cinavia CA (or its designated CA) and delivered to the sink device in the way that SRMs are signed and distributed as described in section 0. In fact, both SRMs and white/black lists can be signed and delivered together as a single data object.
A list of SACT technologies can be updated in the same way as the whitelist or blacklist described above.
It is understood that the various embodiments of the present invention may be implemented individually, or collectively, in devices comprised of various hardware and/or software modules and components. These devices, for example, may comprise a processor, a memory unit, an interface that are communicatively connected to each other, and may range from desktop and/or laptop computers, to consumer electronic devices such as media players, mobile devices and the like. For example,
Referring back to
Various embodiments described herein are described in the general context of methods or processes, which may be implemented in one embodiment by a computer program product, embodied in a computer-readable medium, including computer-executable instructions, such as program code, executed by computers in networked environments. A computer-readable medium may include removable and non-removable storage devices including, but not limited to, Read Only Memory (ROM), Random Access Memory (RAM), compact discs (CDs), digital versatile discs (DVD), etc. Therefore, the computer-readable media that is described in the present application comprises non-transitory storage media. Generally, program modules may include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps or processes.
The foregoing description of embodiments has been presented for purposes of illustration and description. The foregoing description is not intended to be exhaustive or to limit embodiments of the present invention to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments. The embodiments discussed herein were chosen and described in order to explain the principles and the nature of various embodiments and its practical application to enable one skilled in the art to utilize the present invention in various embodiments and with various modifications as are suited to the particular use contemplated. The features of the embodiments described herein may be combined in all possible combinations of methods, apparatus, modules, systems, and computer program products.
Number | Name | Date | Kind |
---|---|---|---|
6122610 | Isabelle | Sep 2000 | A |
6145081 | Winograd et al. | Nov 2000 | A |
6175627 | Petrovic et al. | Jan 2001 | B1 |
6427012 | Petrovic | Jul 2002 | B1 |
6430301 | Petrovic | Aug 2002 | B1 |
6683958 | Petrovic | Jan 2004 | B2 |
6792542 | Lee et al. | Sep 2004 | B1 |
6888943 | Lam et al. | May 2005 | B1 |
6931536 | Hollar | Aug 2005 | B2 |
7024018 | Petrovic | Apr 2006 | B2 |
7159118 | Petrovic | Jan 2007 | B2 |
7224819 | Levy et al. | May 2007 | B2 |
7460667 | Lee et al. | Dec 2008 | B2 |
7983922 | Neusinger et al. | Jul 2011 | B2 |
7986806 | Rhoads | Jul 2011 | B2 |
7991995 | Rabin et al. | Aug 2011 | B2 |
8015410 | Pelly et al. | Sep 2011 | B2 |
8055013 | Levy et al. | Nov 2011 | B2 |
8059815 | Lofgren et al. | Nov 2011 | B2 |
8059858 | Brundage et al. | Nov 2011 | B2 |
8085935 | Petrovic | Dec 2011 | B2 |
8138930 | Heath | Mar 2012 | B1 |
8151113 | Rhoads | Apr 2012 | B2 |
8181262 | Cooper et al. | May 2012 | B2 |
8189861 | Rucklidge | May 2012 | B1 |
8194803 | Baum et al. | Jun 2012 | B2 |
8249992 | Harkness et al. | Aug 2012 | B2 |
8280103 | Petrovic et al. | Oct 2012 | B2 |
8301893 | Brundage | Oct 2012 | B2 |
8315835 | Tian et al. | Nov 2012 | B2 |
8321679 | Petrovic et al. | Nov 2012 | B2 |
8340348 | Petrovic et al. | Dec 2012 | B2 |
8346532 | Chakra et al. | Jan 2013 | B2 |
8346567 | Petrovic et al. | Jan 2013 | B2 |
8467717 | Croy et al. | Jun 2013 | B2 |
8479225 | Covell et al. | Jul 2013 | B2 |
8533481 | Petrovic et al. | Sep 2013 | B2 |
8538066 | Petrovic et al. | Sep 2013 | B2 |
8588459 | Bloom et al. | Nov 2013 | B2 |
8589969 | Falcon | Nov 2013 | B2 |
8601504 | Stone et al. | Dec 2013 | B2 |
8615104 | Petrovic | Dec 2013 | B2 |
8682026 | Petrovic et al. | Mar 2014 | B2 |
8726304 | Petrovic et al. | May 2014 | B2 |
8745403 | Petrovic | Jun 2014 | B2 |
8781967 | Tehranchi et al. | Jul 2014 | B2 |
8791789 | Petrovic et al. | Jul 2014 | B2 |
8806517 | Petrovic et al. | Aug 2014 | B2 |
8811655 | Petrovic et al. | Aug 2014 | B2 |
8826346 | Panje et al. | Sep 2014 | B1 |
8838977 | Winograd et al. | Sep 2014 | B2 |
8838978 | Winograd et al. | Sep 2014 | B2 |
8869222 | Winograd et al. | Oct 2014 | B2 |
8923548 | Petrovic et al. | Dec 2014 | B2 |
9009482 | Winograd | Apr 2015 | B2 |
9055239 | Tehranchi et al. | Jun 2015 | B2 |
9106964 | Zhao | Aug 2015 | B2 |
9117270 | Wong et al. | Aug 2015 | B2 |
20020162118 | Levy et al. | Oct 2002 | A1 |
20060239503 | Petrovic et al. | Oct 2006 | A1 |
20070039018 | Saslow et al. | Feb 2007 | A1 |
20110261667 | Ren et al. | Oct 2011 | A1 |
20110293090 | Ayaki et al. | Dec 2011 | A1 |
20110320627 | Landow et al. | Dec 2011 | A1 |
20120023595 | Speare et al. | Jan 2012 | A1 |
20120054194 | Gao et al. | Mar 2012 | A1 |
20120072731 | Winograd | Mar 2012 | A1 |
20120102304 | Brave | Apr 2012 | A1 |
20120122429 | Wood et al. | May 2012 | A1 |
20120129547 | Andrews, III et al. | May 2012 | A1 |
20120203556 | Villette et al. | Aug 2012 | A1 |
20120203734 | Spivack et al. | Aug 2012 | A1 |
20120216236 | Robinson et al. | Aug 2012 | A1 |
20120265735 | McMillan et al. | Oct 2012 | A1 |
20120272012 | Aronovich et al. | Oct 2012 | A1 |
20120272327 | Shin et al. | Oct 2012 | A1 |
20120300975 | Chalamala et al. | Nov 2012 | A1 |
20120304206 | Roberts et al. | Nov 2012 | A1 |
20120308071 | Ramsdell et al. | Dec 2012 | A1 |
20130031579 | Klappert | Jan 2013 | A1 |
20130060837 | Chakraborty et al. | Mar 2013 | A1 |
20130073065 | Chen et al. | Mar 2013 | A1 |
20130129303 | Lee et al. | May 2013 | A1 |
20130151855 | Petrovic et al. | Jun 2013 | A1 |
20130151856 | Petrovic et al. | Jun 2013 | A1 |
20130152210 | Petrovic et al. | Jun 2013 | A1 |
20130325622 | Kamitani et al. | Dec 2013 | A1 |
20140067950 | Winograd | Mar 2014 | A1 |
20140074855 | Zhao et al. | Mar 2014 | A1 |
20140075465 | Petrovic et al. | Mar 2014 | A1 |
20140075469 | Zhao | Mar 2014 | A1 |
20140267907 | Downes et al. | Sep 2014 | A1 |
20140270337 | Zhao et al. | Sep 2014 | A1 |
20140279549 | Petrovic et al. | Sep 2014 | A1 |
20140289873 | Morss et al. | Sep 2014 | A1 |
20140325550 | Winograd et al. | Oct 2014 | A1 |
20140325673 | Petrovic | Oct 2014 | A1 |
20150030200 | Petrovic et al. | Jan 2015 | A1 |
20150121534 | Zhao et al. | Apr 2015 | A1 |
20150264429 | Winograd et al. | Sep 2015 | A1 |
20160112771 | Choi et al. | Apr 2016 | A1 |
20160162858 | Winograd | Jun 2016 | A1 |
20160301987 | Eyer | Oct 2016 | A1 |
20200028698 | Hunacek | Jan 2020 | A1 |
Number | Date | Country |
---|---|---|
2004163855 | Jun 2004 | JP |
2004173237 | Jun 2004 | JP |
2004193843 | Jul 2004 | JP |
2004194233 | Jul 2004 | JP |
2004328747 | Nov 2004 | JP |
2005051733 | Feb 2005 | JP |
2005094107 | Apr 2005 | JP |
2005525600 | Aug 2005 | JP |
20100272920 | Dec 2010 | JP |
1020080087047 | Sep 2008 | KR |
20100009384 | Jan 2010 | KR |
1020120128149 | Nov 2012 | KR |
2005017827 | Feb 2005 | WO |
2005038778 | Apr 2005 | WO |
2006051043 | May 2006 | WO |
2009031082 | Mar 2009 | WO |
2010073236 | Jul 2010 | WO |
2010135687 | Nov 2010 | WO |
2011116309 | Sep 2011 | WO |
2013163921 | Nov 2013 | WO |
2014153199 | Sep 2014 | WO |
Entry |
---|
Aris Technologies, Inc. “Audio Watermarking System to Screen Digital Audio Content for LCM Acceptance,” May 1999 (17 pages). |
Bangaleea, R., et al., “Performance improvement of spread spectrum spatial-domain watermarking scheme through diversity and attack characterisation,” IEEE Africon, pp. 293-298, 2002. |
Hartung, F., et al., “Watermarking of MPEG-2 encoded video without decoding and re-coding,” Proc. SPIE Multimedia Computing and Networking 97, 3020:264-274, Feb. 1997. |
Hartung, F., et al., “Watermarking of uncompressed and compressed video,” Signal Processing, 3(66):283-301, May 1998. |
Kalker, T., et al., “System issues in digital image and video watermarking for copy protection,” Proc. IEEE Int. Conf. on Multimedia Computing and Systems, pp. 562-567, Jun. 1999. |
Kirovski , D., et al., “Multimedia content screening using a dual watermarking and fingerprinting system,” Proceedings of the tenth ACM international conference, pp. 372-381, 2002. |
Kirovski, D., et al., “Multimedia content screening using a dual watermarking and fingerprinting system,” Multimedia '02 Proceedings of the tenth ACM international conference on Multimedia, 2002 (11 pages). |
Verance Corporation, “Confirmedia,” PowerPoint presentation made to National Association of Broadcasters, Apr. 24, 2001 (40 pages). |
Zhao, J., “A WWW service to embed and prove digital copyright watermarks,” Proc. European Conf. on Multimedia Applications, Services and Techniques (ECMAST'96), May 1996 (15 pages). |
Zhao, J., “Applying digital watermarking techniques to online multimedia commerce,” Proc. Int. Conf. on Imaging Science, Systems and Applications (CISSA'97), Jun./Jul. 1997 (7 pages). |
“ATSC-3.0 Automatic Content Recognition Watermarking Solutions,” ATSC Technology Group, Advanced Television Systems Committee, Inc., Jan. 2014 (6 pages). |
“ATSC Candidate Standard: Service Usage Reporting,” ATSC Technology Group, Advanced Television Systems Committee, Inc., Dec. 2015 (15 pages). |
“ATSC Candidate Standard: Content Recovery in Redistribution Scenarios,” ATSC Technology Group, Advanced Television Systems Committee, Inc., Dec. 2015 (43 pages). |
International Search Report and Written Opinion for PCT/US2017/028198, dated Aug. 8, 2017 (13 pages). |
Number | Date | Country | |
---|---|---|---|
20190318061 A1 | Oct 2019 | US |
Number | Date | Country | |
---|---|---|---|
62659091 | Apr 2018 | US |