CN106919814A - A kind of software watermark coding method based on dynamic graph code - Google Patents

A kind of software watermark coding method based on dynamic graph code Download PDF

Info

Publication number
CN106919814A
CN106919814A CN201710127115.0A CN201710127115A CN106919814A CN 106919814 A CN106919814 A CN 106919814A CN 201710127115 A CN201710127115 A CN 201710127115A CN 106919814 A CN106919814 A CN 106919814A
Authority
CN
China
Prior art keywords
watermark
code
software
prime number
graph code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710127115.0A
Other languages
Chinese (zh)
Inventor
燕雪峰
刘嘉怡
薛参观
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN201710127115.0A priority Critical patent/CN106919814A/en
Publication of CN106919814A publication Critical patent/CN106919814A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

The invention discloses a kind of software watermark coding method based on dynamic graph code, belong to the technical field of software watermark.Watermark is decomposed into some watermark segments and adds redundancy fragment by the coding method using Chinese remainder theorem, graph code is ranked up to leaf node on the basis of former PPCT, realize the paired expression of watermark segment, software watermark with self error detecing capability can be formed using coding method disclosed by the invention, watermark encoder efficiency is improve, the disguise and attack tolerant of watermark is enhanced.

Description

A kind of software watermark coding method based on dynamic graph code
Technical field
The invention discloses a kind of software watermark coding method based on dynamic graph code, belong to the technology neck of software watermark Domain.
Background technology
People can conveniently and efficiently obtain increasing digital product by internet, but not complete due to law It is kind and supervise it is not in place, it is illegal obtain, using, the illegal activities serious infringement rights and interests of the software copyright owner such as replicate. Software Watermark is a branch of digital watermarking, the problems such as solving software product copyright protection.With existing software version Power protection technique is compared, it not merely for the purpose of improving data insertion rate, but before ensureing that data insertion rate is higher Put the disguise of raising watermark and resist the ability for deleting, increasing attack.When querying software copyright, Ke Yiti Taking-up has been inserted into the watermark information in software to differentiate the software true and false, while fraudulent copying, traveling software product etc. can be hit Malfeasance.Software watermark can be the relevant informations such as software author, publisher, the owner, period of validity of software.
Dynamic graph code realizes that watermark is all that the classical dynamic watermark proposed in Collberg and Thomborson is calculated at present It is subject to perfect on the basis of method-CT algorithms, the key idea of CT algorithms is the topological diagram knot dynamically set up when program is run Embedded watermark information in structure.On the basis of CT algorithms, have and realize the various of software watermark including following three kinds dynamic graph codes Improved method:1. Yu Tao et al. proposes the improvement encoding scheme based on arrangement figure and plane loop tree;2. Wang Hui is tender et al. carries Go out on the basis of plane loop tree-encoding structure, an empty pointer is separately increased to each leaf node to carry out watermark value Coefficient coding;3. Zhang Haichao is proposed carries out K- radixes coding so as to realize watermark encoder to whole nodes of plane loop tree Scheme.Above encoding scheme stresses to realize data insertion rate and ignores the code efficiency of watermark, robustness, disguise and be subject to Self error detection and repair ability during attack.
The content of the invention
Goal of the invention of the invention is directed to the deficiency of above-mentioned background technology, there is provided a kind of based on the soft of dynamic graph code Part watermark encoder method, is encoded and sequence graph code by PPCT (Planted Plane Cubic Tree, plane loop tree) Hybrid coding mode realize the paired expression of watermark segment, solve existing software watermark coding techniques and stress to realize data Embedded rate and ignore watermark encoder efficiency, robustness, disguise and under fire when self error detection and the technology of repair ability ask Topic.
The present invention is adopted the following technical scheme that for achieving the above object:
A kind of software watermark coding method based on dynamic graph code, comprises the following steps:
A, watermark to be embedded is decomposed into by the watermark segment of remainder and prime number product representation using Chinese remainder theorem;
B, using combine PPCT coding and sequence graph code hybrid coding mode express watermark segment.
As the further prioritization scheme of the software watermark coding method based on dynamic graph code, the specific method of step A For:Choose big integer W and numerical value is respectively less than m prime number p of big integer1,p2,...,pm, it is any from m prime number to choose prime number I, prime number j, according to the big integer of selected prime decomposition constructing congruence equations:Each congruence side Journey one watermark segment of correspondence, wherein, p1i、p1jRespectively the 1st time any prime number i, prime number j, x for choosing1It is the 1st congruence side The remainder of journey, pki、pkjRespectively any prime number i, prime number j, x for choosing of kth timekIt is k-th remainder of congruence, k is most Big value is
As the further prioritization scheme of the software watermark coding method based on dynamic graph code, the specific side of step B Method is:
Remainder to each congruence carries out PPCT codings, and the modulus to each congruence is ranked up figure volume Code, selection carries out minimum leaf node number needed for PPCT codings to remainder and minimum leaf needed for graph code is ranked up to modulus Maximum in son node number determines leaf node number needed for hybrid coding, the minimum leaf needed for PPCT coded representation remainders Nodes modulus is represented more than sorting coding needed for minimum leaf leaf node number when, if choosing PPCT coded representations remainder institute Need minimum leaf node number as leaf node number needed for hybrid coding, this can cause when coding is ranked up to leaf node There is unnecessary leaf node not used, therefore, it is stipulated that the right pointer of leaf node being not used during sorting coding is sky;
The pointer of each node in initialization PPCT topological diagrams:
Initialize each pointer of non-leaf nodes:Left pointers and Right pointers be respectively directed to the non-leaf nodes a left side, Right child nodes, Next pointers point to Null,
Initialize each pointer of leaf node:Left pointers point to the left side near the leaf node of the leaf node, Right pointers are used for the graph code that sorts, and Next pointers point to the leaf node in itself,
Each pointer of initialization generation node:Left pointers point to the generation node first leaf node from right to left, Right pointers point to root node, and Next pointers point to Null.
A kind of software watermark embedding grammar based on dynamic graph code, the watermark segment coding that above-mentioned coding method is obtained The watermark segment code that host is capable of identify that is converted to, when the specific list entries of embedded code arrives by watermark segment code Randomly it is embedded in host.
A kind of software watermark extracting method based on dynamic graph code, when the specific list entries for performing code arrives, The watermark segment code that the above-mentioned watermark embedding method of Dynamic Execution is obtained, the PPCT topological diagrams to being presented in heap carry out decoding and obtain Take watermark information.
The present invention uses above-mentioned technical proposal, has the advantages that:
(1) the invention provides a kind of Software Watermark based on dynamic graph code, the program is fixed using Chinese Remainder Watermark is decomposed into some fragments and adds redundancy fragment by reason, is ranked up figure volume to leaf node on the basis of former PPCT Code, realizes the paired expression of watermark segment, when a certain node enters in attacker's topological subgraph corresponding to certain watermark segment When row is attacked, the EDC error detection and correction energy of the circular linked list that can be constituted by the stability of PPCT and generation node and leaf node Power realizes self-regeneration, when attacker carries out overall addition, deletion etc. to part watermark segment to be attacked, still can be by watermark point The redundancy and error correcting capability of resolving Algorithm are modified, so as to recover correct watermark;
(2) watermark segment by paired expression is added in program, topological efficiency is higher and disguised, attack tolerant compared with By force, the software watermark with self error detecing capability can be formed;
(3) coded system that the present invention relates to can be applied not only to software watermark field, for needing encryption to deposit The data of storage are (such as:Scientific research private data) can use, the data stored using coding techniques disclosed in the present application are i.e. Make to be stolen or distorted by the person of hatching a sinister plot, user still has an opportunity to obtain correct original data.
Brief description of the drawings
Fig. 1 is the flow chart of software watermark implementation method of the present invention.
Fig. 2 is that the PPCT topological diagrams that hybrid coding is obtained are carried out to 4mod (2 × 3).
Specific embodiment
The technical scheme invented is described in detail below in conjunction with the accompanying drawings.In order to existing software watermark coding techniques stresses Realize data insertion rate and ignore watermark encoder efficiency, robustness, disguise and under fire when self error detection and repair ability Defect, the application proposes a kind of software watermark coding method based on dynamic graph code, by PPCT (Planted Plane Cubic Tree, plane loop tree) the hybrid coding mode of coding and sequence graph code realizes the paired expression of watermark segment. And further extend the watermark embedding method and watermark extracting method being adapted therewith on the basis of coding method.
Based on the Software Watermark of dynamic graph code, as shown in figure 1, step is as follows:
A, watermark catabolic phase:Choose big integer W, m prime number p of simultaneous selection1,p2...pm, wherein, p1,p2...pm Less than W.
B, using Chinese remainder theorem, big integer W is resolved intoIndividual shape such as xkmod(pi×pj) congruence side Journey, wherein pi、pjIt is that two prime numbers are randomly selected from m prime number, calculatesIndividual remainder, the congruence of construction Equation group is as follows:Each congruence one watermark segment of correspondence, each congruence side Journey is made up of a pair of integers, i.e. xkAnd pi×pjProduct, the congruence equations are chosen two prime numbers and are existed superfluous due to any every time Remaining equation, redundant equation correspondence redundancy fragment, p1i、p1jRespectively the 1st time any prime number i, prime number j, x for choosing1For the 1st together The remainder of remaining equation, pki、pkjRespectively any prime number i, prime number j, x for choosing of kth timekIt is k-th remainder of congruence, k Maximum be
C, coding stage:
Minimum node number needed for calculating two kinds of coded systems respectively, takes the two maximum as leaf section needed for hybrid coding Points, xkEncoded with PPCT and realized, pi×pjRealized with sequence graph code,
For non-leaf nodes:Left pointers and Right pointers are respectively directed to the left and right child section of the non-leaf nodes Point, Next pointers point to Null,
For leaf node:Left pointers point to the left side near the leaf node of the leaf node, and Right pointers are used for Sequence graph code, Next pointers point to the leaf node in itself,
For generation node:Left pointers point to the generation node first leaf node from right to left, and Right pointers are pointed to Root node, Next pointers point to Null;
By taking 4238 ≡ 4mod2 × 3 as an example, enumerated by PPCT and represent that the scope of integer understands leaf node needed for PPCT codings The span of number a is a >=4, takes a=4, represents that integer range understands b by ordering chart!- 1 >=6, solve sequence graph code needed for The span of leaf node number b is b >=4, takes b=4.Therefore, leaf node number needed for max=4, i.e. hybrid coding is 4.Root Go up coding rule according to this, the hybrid coding of 4mod (2 × 3) as shown in Fig. 2 because non-leaf nodes next pointers are null, Therefore this figure omits the next pointers of non-leaf nodes.
D, watermark insertion stage:After completing the coding of watermark segment, watermark segment is converted into the water that host is capable of identify that Print fragment code, and watermark segment code is randomly embedded in host when the specific list entries of embedded code arrives.
E, watermark extracting stage:When the specific list entries for performing code arrives, Dynamic Execution watermark segment code is right The PPCT topological diagrams being presented in heap carry out decoding and obtain watermark information.
Watermark information is decomposed the present invention some watermark pieces for asking remainder and prime number product representation using Chinese remainder theorem Section, then some watermark segments are encoded by way of being ranked up graph code in PPCT leaf nodes, will originally once The encoding scheme for once being encoded to a pair of integers can only be improved to the encoding scheme that an integer is encoded, be being taken into account While data insertion rate, code efficiency is improve, enhance disguised, attack tolerant and self-correction ability.

Claims (5)

1. a kind of software watermark coding method based on dynamic graph code, it is characterised in that comprise the following steps:
A, watermark to be embedded is decomposed into by the watermark segment of remainder and prime number product representation using Chinese remainder theorem;
B, using combine PPCT coding and sequence graph code hybrid coding mode express watermark segment.
2. a kind of software watermark coding method based on dynamic graph code according to claim 1, it is characterised in that step A Specific method be:Choose big integer W and numerical value is respectively less than m prime number p of big integer1,p2,...,pm, appoint from m prime number Meaning chooses prime number i, prime number j, according to the big integer of selected prime decomposition constructing congruence equations:Often One congruence one watermark segment of correspondence, wherein, p1i、p1jRespectively the 1st time any prime number i, prime number j, x for choosing1For 1st remainder of congruence, pki、pkjRespectively any prime number i, prime number j, x for choosing of kth timekIt is k-th congruence Remainder, the maximum of k is
3. a kind of software watermark coding method based on dynamic graph code according to claim 2, it is characterised in that step B Specific method be:
Remainder to each congruence carries out PPCT codings, and the modulus to each congruence is ranked up graph code, Selection carries out minimum leaf node number needed for PPCT codings to remainder and minimum leaf needed for graph code is ranked up to modulus Maximum in nodes determines leaf node number needed for hybrid coding;
Initialize each pointer of non-leaf nodes:Left pointers and Right pointers are respectively directed to the left and right child of the non-leaf nodes Child node, Next pointers point to Null,
Initialize each pointer of leaf node:Left pointers point to the left side near the leaf node of the leaf node, and Right refers to Pin is used for the graph code that sorts, and Next pointers point to the leaf node in itself,
Each pointer of initialization generation node:Left pointers point to the generation node first leaf node from right to left, and Right refers to Pin points to root node, and Next pointers point to Null.
4. a kind of software watermark embedding grammar based on dynamic graph code, it is characterised in that by coding method described in claim 1 The watermark segment code that the watermark segment code conversion of acquisition is capable of identify that for host, arrives in the specific list entries of embedded code Watermark segment code is randomly embedded in host when coming.
5. a kind of software watermark extracting method based on dynamic graph code, it is characterised in that performing the specific input sequence of code When row arrive, the watermark segment code that watermark embedding method described in Dynamic Execution claim 4 is obtained, to being presented in heap PPCT topological diagrams carry out decoding and obtain watermark information.
CN201710127115.0A 2017-03-06 2017-03-06 A kind of software watermark coding method based on dynamic graph code Pending CN106919814A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710127115.0A CN106919814A (en) 2017-03-06 2017-03-06 A kind of software watermark coding method based on dynamic graph code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710127115.0A CN106919814A (en) 2017-03-06 2017-03-06 A kind of software watermark coding method based on dynamic graph code

Publications (1)

Publication Number Publication Date
CN106919814A true CN106919814A (en) 2017-07-04

Family

ID=59460782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710127115.0A Pending CN106919814A (en) 2017-03-06 2017-03-06 A kind of software watermark coding method based on dynamic graph code

Country Status (1)

Country Link
CN (1) CN106919814A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110113505A (en) * 2019-04-24 2019-08-09 湖北工业大学 A kind of safe steganography coding method of low disturbance information based on Chinese remainder theorem
CN116915262A (en) * 2023-09-12 2023-10-20 北京路畅均安科技有限公司 Intelligent construction site engineering quality management system based on Internet of things

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
彭超凡: "基于动态图编码的软件水印研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
李淑芝: "基于中国剩余定理的动态图软件水印方案", 《软件导刊》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110113505A (en) * 2019-04-24 2019-08-09 湖北工业大学 A kind of safe steganography coding method of low disturbance information based on Chinese remainder theorem
CN116915262A (en) * 2023-09-12 2023-10-20 北京路畅均安科技有限公司 Intelligent construction site engineering quality management system based on Internet of things
CN116915262B (en) * 2023-09-12 2023-12-08 北京路畅均安科技有限公司 Intelligent construction site engineering quality management system based on Internet of things

Similar Documents

Publication Publication Date Title
CN106161012B (en) A kind of quantum key distribution after-treatment system and method based on polarization code error correction
CN108537049B (en) Adaptive steganography algorithm based on binary image
JP3735521B2 (en) Embedded code generation method and apparatus, embedded code detection method and apparatus, and digital watermark embedding apparatus
CN103605950B (en) Method and system for hiding signature in credible two-dimensional code
CN106815544A (en) A kind of information concealing method based on Quick Response Code
CN109657769B (en) Two-dimensional code information hiding method based on run length coding
CN105320899A (en) User-oriented cloud storage data integrity protection method
CN111966974B (en) Safe and reversible relational database copyright protection method
Ulutas et al. Secret image sharing scheme with adaptive authentication strength
CN110958232B (en) Collusion-resistant power data fingerprint coding method based on CFF code and RS code
CN112016061A (en) Excel document data protection method based on robust watermarking technology
CN110999201A (en) Cryptographic apparatus and method
CN107862047A (en) Natural person's data processing method and system based on multiple data sources
CN109495211B (en) Channel coding and decoding method
CN106919814A (en) A kind of software watermark coding method based on dynamic graph code
CN109840576A (en) The generation method and coding/decoding method of anti-copying two dimensional code based on segmentation insertion
CN101923700B (en) Double-effect digital watermarking method
CN104598801B (en) A kind of Dynamic Two-dimensional code generating method based on algorithm reconstruct
CN109101791B (en) Watermark parameter automatic acquisition method and system based on data characteristics
Merkle et al. Multi-modal and multi-instance fusion for biometric cryptosystems
CN103262117A (en) Paired carrier and pivot steganographic objects for stateful data layering
Schaathun On watermarking/fingerprinting for copyright protection
CN109033853A (en) Physical layer information hidden method, device and terminal based on convolutional code
Deshpande et al. New watermarking technique for relational databases
CN104363089A (en) Method for realizing fuzzy vault on the basis of geographical location information

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170704