• Title/Summary/Keyword: control flow graph

Search Result 105, Processing Time 0.027 seconds

A Java Birthmark Based on Similarity Between Instructions of Control Flow Graph (제어 흐름 그래프의 명령어 유사성에 기반한 자바 버스마크)

  • Park, Heewan;Lim, Hyun-il;Choi, Seokwoo;Han, Taisook
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2009.04a
    • /
    • pp.424-427
    • /
    • 2009
  • 소프트웨어 버스마크는 프로그램을 식별하는데 사용될 수 있는 프로그램의 고유한 특징을 말한다. 본 논문에서는 자바 메소드의 제어 흐름 그래프 유사도에 기반한 자바 버스마크를 제안한다. 제어 흐름 그래프 유사도는 노드의 유사도와 에지의 유사도로 나누어 계산하였다. 노드의 유사도는 인접 노드의 유사도를 함께 고려했으며, 에지 유사도는 이미 매칭된 노드들 사이의 거리를 측정하는 방법을 사용했다. 본 논문에서 제안한 버스마크를 평가하기 위해서 서로 다른 프로그램을 구별할 수 있는 신뢰도와 프로그램 최적화나 난독화에 견딜 수 있는 강인도에 대한 실험을 하였다. 실험 결과로부터 본 논문에서 제안하는 버스마크가 기존의 정적 버스마크보다 신뢰도가 높으면서도 난독화나 컴파일러 변경에 강인하다는 것을 확인하였다.

Tamoxifen Induces Apoptosis of Leishmania major Promastigotes in Vitro

  • Doroodgar, Masoud;Delavari, Mahdi;Doroodgar, Moein;Abbasi, Ali;Taherian, Ali Akbar;Doroodgar, Abbas
    • Parasites, Hosts and Diseases
    • /
    • v.54 no.1
    • /
    • pp.9-14
    • /
    • 2016
  • Tamoxifen is an antagonist of the estrogen receptor and currently used for the treatment of breast cancer. The current treatment of cutaneous leishmaniasis with pentavalent antimony compounds is not satisfactory. Therefore, in this study, due to its antileishmanial activity, effects of tamoxifen on the growth of promastigotes and amastigotes of Leishmania major Iranian strain were evaluated in vitro. Promastigotes and amastigotes were treated with different concentrations (1, 5, 10, 20, and $50{\mu}g/ml$) and time periods (24, 48, and 72 hr) of tamoxifen. After tamoxifen treatment, MTT assay (3-[4,5-dimethylthiazol-2-yl]-2,5 biphenyl tetrazolium bromide assay) was used to determine the percentage of live parasites and Graph Pad Prism software to calculate $IC_{50}$. Flow cytometry was applied to investigate the induction of tamoxifen-induced apoptosis in promastigotes. The half maximal inhibitory concentration ($IC_{50}$) of tamoxifen on promastigotes was $2.6{\mu}g/ml$ after 24 hr treatment. Flow cytometry analysis showed that tamoxifen induced early and late apoptosis in Leishmania promastigotes. While after 48 hr in control group the apoptosis was 2.0%, the $50{\mu}g/L$ concentration of tamoxifen increased it to 59.7%. Based on the in vitro antileishmanial effect, tamoxifen might be used for leishmaniasis treatment; however, further researches on in vivo effects of tamoxifen in animal models are needed.

Bus and Registor Optimization in Datapath Synthesis (데이터패스 합성에서의 버스와 레지스터의 최적화 기법)

  • Sin, Gwan-Ho;Lee, Geun-Man
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.8
    • /
    • pp.2196-2203
    • /
    • 1999
  • This paper describes the bus scheduling problem and register optimization method in datapath synthesis. Scheduling is process of operation allocation to control steps in order to minimize the cost function under the given circumstances. For that purpose, we propose some formulations to minimize the cost function for bus assignment to get an optimal and minimal cost function in hardware allocations. Especially, bus and register minimization technique are fully considered which are the essential topics in hardware allocation. Register scheduling is done after the operation and bus scheduling. Experiments are done with the DFG model of fifth-order digital ware filter to show its effectiveness. Structural integer programming formulations are used to solve the scheduling problems in order to get the optimal scheduling results in the integer linear programming environment.

  • PDF

System Optimization Technique using Crosscutting Concern (크로스커팅 개념을 이용한 시스템 최적화 기법)

  • Lee, Seunghyung;Yoo, Hyun
    • Journal of Digital Convergence
    • /
    • v.15 no.3
    • /
    • pp.181-186
    • /
    • 2017
  • The system optimization is a technique that changes the structure of the program in order to extract the duplicated modules without changing the source code, reuse of the extracted module. Structure-oriented development and object-oriented development are efficient at crosscutting concern modular, however can't be modular of crosscutting concept. To apply the crosscutting concept in an existing system, there is a need to a extracting technique for distributed system optimization module within the system. This paper proposes a method for extracting the redundant modules in the completed system. The proposed method extracts elements that overlap over a source code analysis to analyze the data dependency and control dependency. The extracted redundant element is used to program dependency analysis for the system optimization. Duplicated dependency analysis result is converted into a control flow graph, it is possible to produce a minimum crosscutting module. The element extracted by dependency analysis proposes a system optimization method which minimizes the duplicated code within system by setting the crosscutting concern module.

Regression Testing of Software Evolution by AOP (AOP를 이용하여 진화된 프로그램의 회귀테스트 기법)

  • Lee, Mi-Jin;Choi, Eun-Man
    • The KIPS Transactions:PartD
    • /
    • v.15D no.4
    • /
    • pp.495-504
    • /
    • 2008
  • Aspect Oriented Programming(AOP) is a relatively new programming paradigm and has properties that other programming paradigms don't have. This new programming paradigm provides new modularization of software systems by cross-cutting concerns. In this paper, we propose a regression test method for program evolution by AOP. By using JoinPoint, we can catch a pointcut-name which makes it possible to test the incorrect pointcut strength fault and the incorrect aspect precedence fault. Through extending proof rules to aspect, we can recognize failures to establish expected postconditions faults. We can also trace variables using set() and get() pointcut and test failures to preserve state invariant fault. Using control flow graph, we can test incorrect changes in control dependencies faults. In order to show the correctness of our proposed method, channel management system is implemented and tested by using proposed methods.

Machine Learning Based Automated Source, Sink Categorization for Hybrid Approach of Privacy Leak Detection (머신러닝 기반의 자동화된 소스 싱크 분류 및 하이브리드 분석을 통한 개인정보 유출 탐지 방법)

  • Shim, Hyunseok;Jung, Souhwan
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.30 no.4
    • /
    • pp.657-667
    • /
    • 2020
  • The Android framework allows apps to take full advantage of personal information through granting single permission, and does not determine whether the data being leaked is actual personal information. To solve these problems, we propose a tool with static/dynamic analysis. The tool analyzes the Source and Sink used by the target app, to provide users with information on what personal information it used. To achieve this, we extracted the Source and Sink through Control Flow Graph and make sure that it leaks the user's privacy when there is a Source-to-Sink flow. We also used the sensitive permission information provided by Google to obtain information from the sensitive API corresponding to Source and Sink. Finally, our dynamic analysis tool runs the app and hooks information from each sensitive API. In the hooked data, we got information about whether user's personal information is leaked through this app, and delivered to user. In this process, an automated Source/Sink classification model was applied to collect latest Source/Sink information, and the we categorized latest release version of Android(9.0) with 88.5% accuracy. We evaluated our tool on 2,802 APKs, and found 850 APKs that leak personal information.

Prolog Tailoring Technique on Epilog Tailored Procedures (에필로그 테일러된 프로시저를 위한 프롤로그 테일러링 기법)

  • Jhi, Yoon-Chan;Kim, Ki-Chang
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.5
    • /
    • pp.1345-1356
    • /
    • 1998
  • Prolog tailoring technique, an optimization method to improve the execution speed of a procedure, is proposed in this paper. When a procedure is frequently and repeatedly called and the machine has a lot of callee-saved registers, optimizing prolog and epilog can become an important step of optimization. Epilg tailoring supported by IBM XL C Compiler has been known to improve procedure's execution speed by reducing register restore instructions on execution paths, but no algorithms for prolog tailoring has been proposed yet. The prolog generated by the prolog tailoring algorithm proposed in this paper executes considerably smaller number of register save instructions at run-time. This means the total number of instructions to be executed is decreased resulting in an improvement on the procedure's execution speed. To maintain the correctness of code, prolog code should not be inserted inside diamond structures of loop structures. This paper proposes a prolog tailoring technique which generates register save instructions at the best position in a control flow graph while not allowing the insertion of any prolog code inside diamond structures of loop structures.

  • PDF

Fertigation Techniques Using Fertilizers with Peristaltic Hose Pump for Hydroponics (연동펌프를 이용한 비료염 공급 관비재배기술 연구)

  • Kim, D.E.;Lee, G.I.;Kim, H.H.;Woo, Y.H.;Lee, W.Y.;Kang, I.C.
    • Journal of Practical Agriculture & Fisheries Research
    • /
    • v.17 no.1
    • /
    • pp.57-71
    • /
    • 2015
  • This study was conducted to develop the fertigation system with a peristaltic hose pump and brushless DC motor. The fertigation system was consisted of sensor, main controller, motor control unit, peristaltic pump, water supply pump, control panel, and filter. The peristaltic pump discharges liquid by squeezing the tube with rollers. Rollers attached to the external circumference of the rotor compresses the flexible tube. The fluid is contained within a flexible tube fitted inside a circular pump casing. The developed fertigation system has no mixing tank but instead injects directly a concentrated nutrient solution into a water supply pipe. The revolution speed of the peristaltic pump is controlled by PWM (Pulse width modulation) method. When the revolution speed of the peristaltic pump was 300rpm, the flow rate of the 3.2, 4.8, 6.3mm diameter tube was 202, 530, 857mL/min, respectively. As increasing revolution speed, the flow rate of the peristaltic pump linearly increased. As the inner diameter of a tube larger, a slope of graph is more steep. Flow rate of three roller was more than that of four roller. Flow rate of a norprene tube with good restoring force was more than that of a pharmed tube. As EC sensor probe was installed in direct piping in comparison with bypass piping showed good performance. After starting the system, it took 16~17 seconds to stabilize EC. The maximum value of EC was 1.44~1.7dS/m at a setting value of 1.4dS/m. The developed fertigation system showed ±0.06dS/m deviation from the setting value of EC. In field test, Cucumber plants generally showed good growth. From these findings, this fertigation system can be appropriately suitable for fertigation culture for crops.

Development and Application of Siphon Breaker Simulation Program (사이펀 차단기 시뮬레이션 프로그램의 개발 및 활용)

  • Lee, Kwon-Yeong;Kim, Wan-Soo
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.17 no.5
    • /
    • pp.346-353
    • /
    • 2016
  • In the design conditions of some research reactors, the siphon phenomenon can cause continuous efflux of water during pipe rupture. A siphon breaker is a safety device that can prevent water efflux effectively. However, the analysis of the siphon breaking is complicated because many variables must be included in the calculation process. For this reason, a simulation program was developed with a user-friendly GUI to analyze the siphon breaking easily. The program was developed by MFC programming using Visual Studio 2012 in Windows 8. After saving the input parameters from a user, the program proceeds with three steps of calculation using fluid mechanics formulas. Bernoulli's equation is used to calculate the velocity, quantity, water level, undershooting, pressure, loss coefficient, and factors related to the two-phase flow. The Chisholm model is used to predict the results from a real-scale experiment. The simulation results are shown in a graph, through which a user can examine the total breaking situation. It is also possible to save all of the resulting data. The program allows a user to easily confirm the status of the siphon breaking and would be helpful in the design of siphon breakers.

A Sanitizer for Detecting Vulnerable Code Patterns in uC/OS-II Operating System-based Firmware for Programmable Logic Controllers (PLC용 uC/OS-II 운영체제 기반 펌웨어에서 발생 가능한 취약점 패턴 탐지 새니타이저)

  • Han, Seungjae;Lee, Keonyong;You, Guenha;Cho, Seong-je
    • Journal of Software Assessment and Valuation
    • /
    • v.16 no.1
    • /
    • pp.65-79
    • /
    • 2020
  • As Programmable Logic Controllers (PLCs), popular components in industrial control systems (ICS), are incorporated with the technologies such as micro-controllers, real-time operating systems, and communication capabilities. As the latest PLCs have been connected to the Internet, they are becoming a main target of cyber threats. This paper proposes two sanitizers that improve the security of uC/OS-II based firmware for a PLC. That is, we devise BU sanitizer for detecting out-of-bounds accesses to buffers and UaF sanitizer for fixing use-after-free bugs in the firmware. They can sanitize the binary firmware image generated in a desktop PC before downloading it to the PLC. The BU sanitizer can also detect the violation of control flow integrity using both call graph and symbols of functions in the firmware image. We have implemented the proposed two sanitizers as a prototype system on a PLC running uC/OS-II and demonstrated the effectiveness of them by performing experiments as well as comparing them with the existing sanitizers. These findings can be used to detect and mitigate unintended vulnerabilities during the firmware development phase.