Jaewoo Park

26 papers A* 2B 1C 2Journal 13Unranked 8
YearRankTypeTitle / Venue / Authors
2026 J jnl
CoRR
Taegyoon Yoon, Yegyu Han, Seojin Ji, Jaewoo Park, Sojeong Kim, Taein Kwon, Hyung-Sin Kim
2026 J jnl
Eng. Appl. Artif. Intell.
Seonghwan Park, Jaewoo Park, Youhyun Kim, Inkyu Moon, Bahram Javidi
2025 J jnl
CoRR
Euiseop Song, Jaeyoung Park, Jaewoo Park
2025 J jnl
Eng. Appl. Artif. Intell.
Seonghwan Park, Jaeseong Lee, Jaewoo Park, Inkyu Moon
2025 conf
ICCVW
Jaewoo Park, Jihae Lee, Yunjeong Yong
2024 J jnl
CoRR
Dayena Jeong, Jaewoo Park, Jeonghee Jo, Jongkil Park, Jaewook Kim, Hyun Jae Jang, Suyoun Lee, Seongsik Park
2024 conf
ICTC
Jae Seung Lee, Jaewoo Park, Jeeyon Choi, Hyungsik Ju, Junhwan Lee, Moon-Sik Lee
2024 conf
IRPS
TaeYoung Kim, Suhwan Lim, Ilho Myeong, Sanghyun Park, Suseong Noh, Seung Min Lee, Jongho Woo, Hanseung Ko, Youngji Noh, Moonkang Choi, Kiheun Lee, Sangwoo Han, Jongyeon Baek, Kijoon Kim, Dongjin Jung, JiSung Kim, Jaewoo Park, Seunghyun Kim, Hyoseok Kim, Sijung Yoo, Hyun Jae Lee, Duk-Hyun Choe, Seung-Geol Nam, Ilyoung Yoon, Chaeho Kim, Kwanzsoo Kim, Kwanzmin Park, Bong Jin Kuh, Jinseong Heo, Wanki Kim, Daewon Ha, Jaihyuk Song
2024 J jnl
CoRR
Kevin Hua, Daniel Li, Jaewoo Park, Thatchaphol Saranurak
2024 A* conf
ICALP
Kevin Hua, Daniel Li, Jaewoo Park, Thatchaphol Saranurak
2024 J jnl
CoRR
Youngjae Cho, Gwangyeol Kim, Sirojbek Safarov, Seongdeok Bang, Jaewoo Park
2022 J jnl
CoRR
Chaeyoon Jeong, Sundong Kim, Jaewoo Park, Yeonsoo Choi
2022 J jnl
Sensors
Jaewoo Park, Franklyn Jumu, Justin Power, Maxime Richard, Yomna Elsahli, Mohamad Ali Jarkas, Andy Ruan, Adina Luican-Mayer, Jean-Michel Ménard
2020 conf
ICTC
Jae Seung Lee, Jaewoo Park, Jeeyon Choi, Moon-Sik Lee
2019 J jnl
Sensors
Haleh Nazemi, Aashish Joseph, Jaewoo Park, Arezoo Emadi
2017 conf
BigComp
Jusop Choi, Jaewoo Park, Hyoungshick Kim
2017 conf
ICISA
Jaewoo Park, Hyoungshick Kim
2016 C conf
ICCE
Hyochang Kim, Jaewoo Park, Woosang Han, Kyuhwan Oh, Taekjun Ahn, Jun-Gi Jo, Ook Kim, Changsik Yoo
2016 conf
AINA Workshops
Mahdi Daghmechi Firoozjaei, Jaewoo Park, Hyoungshick Kim
2016 A* conf
CCS
Seunghun Cha, Jaewoo Park, Geumhwan Cho, Jun Ho Huh, Hyoungshick Kim
2015 J jnl
Int. J. Circuit Theory Appl.
Keun-Seon Ahn, Jaewoo Park, Changsik Yoo
2011 J jnl
IEEE J. Solid State Circuits
Kyoohyun Lim, Sunki Min, Sang-Hoon Lee, Jaewoo Park, Kisub Kang, Hwahyeong Shin, Hyunchul Shim, Sechang Oh, Sungho Kim, Jong-Ryul Lee, Changsik Yoo, Kukjin Chun
2010 conf
ESSCIRC
Kyoohyun Lim, Sunki Min, Sanghoon Lee, Jaewoo Park, Kisub Kang, Hwahyeong Shin, Hyunchul Shim, Sechang Oh, Sungho Kim, Jong-Ryul Lee, Changsik Yoo, Kukjin Chun
2008 J jnl
IEEE Commun. Mag.
Jeong-dong Ryoo, Jongtae Song, Jaewoo Park, Bheom Soon Joo
2003 C conf
CAINE
Hyungwoo Kang, Jaewoo Park, Gunwoo Nam, Sangseo Park, Jinseok Lee
2003 B conf
PIMRC
Yongho Seok, Jaewoo Park, Yanghee Choi
redb/extractors/decompiler/bninja/similarity/minhashcustom.py
← Index redb/extractors/decompiler/bninja/similarity/minhashcustom.py python
import numpy as np
import mmh3

class MinHashCustom:
    """
    DTO for an actual MinHash
    <minhash>: a binary sequence of packed int8/32 values
    <minhash_int>: the equivalent representation of <minhash> but as list of int8/32
    """

    _HASH_MAX = 0xFFFFFFFF
    _MINHASH_BITS = 32

    def getSignatureEntrySize(self):
        return 1 if self.MINHASH_BITS <= 8 else 4

    def __init__(self, function_addr=None, minhash_bytes=None, minhash_signature=None, minhash_bits=32):
        self.minhash = b""
        self.minhash_int = []
        if minhash_bits:
            self._MINHASH_BITS = minhash_bits
        if minhash_bytes and minhash_signature:
            raise ValueError("Can use only one keyword argument")
        if minhash_bytes:
            if self._MINHASH_BITS <= 8:
                minhash_signature = np.frombuffer(minhash_bytes, dtype=np.uint8)
            else:
                minhash_signature = np.frombuffer(minhash_bytes, dtype=np.uint32)
            self.setMinHash(minhash_signature)
        elif minhash_signature:
            self.setMinHash(minhash_signature)

        self.shingler_composition = {}
        self.function_addr = function_addr

    def hasMinHash(self):
        return len(self.minhash) > 0

    def getMinHash(self):
        return self.minhash

    def getMinHashInt(self):
        return self.minhash_int

    def setMinHash(self, minhash_signature):
        self.minhash_int = [i % 2 ** self._MINHASH_BITS for i in minhash_signature]
        if self._MINHASH_BITS <= 8:
            self.minhash = np.array(self.minhash_int, dtype=np.uint8).tobytes()
        else:
            self.minhash = np.array(self.minhash_int, dtype=np.uint32).tobytes()

    def getComposition(self):
        return self.shingler_composition

    def scoreAgainst(self, other):
        return self.calculateMinHashScore(self.minhash, other.minhash, minhash_bits=self._MINHASH_BITS)

    @staticmethod
    def getHashMax():
        return MinHashCustom._HASH_MAX

    @staticmethod
    def hashData(data, seed) -> int:
        if isinstance(data, (str, bytes, bytearray)):
            return mmh3.hash(data, seed) & MinHashCustom._HASH_MAX
        elif isinstance(data, (list, tuple)):
            to_hash = "|".join(str(elem) for elem in data)
            return mmh3.hash(to_hash, seed) & MinHashCustom._HASH_MAX
        else:
            raise NotImplementedError(
                f"Type not supported for hashData: {type(data).__name__}"
            )

    @staticmethod
    def calculateMinHashScore(first, second, minhash_bits=32):
        if minhash_bits <= 8:
            first_np = np.frombuffer(first, dtype=np.uint8)
            second_np = np.frombuffer(second, dtype=np.uint8)
        else:
            first_np = np.frombuffer(first, dtype=np.uint32)
            second_np = np.frombuffer(second, dtype=np.uint32)
        return 100.0 * sum(first_np == second_np) / len(first_np)

    @staticmethod
    def calculateMinHashIntScore(first, second):
        score = 0
        num_hashes = len(first)
        if num_hashes:
            for index, part in enumerate(first):
                score += 1 if part == second[index] else 0
            return 100.0 * score / num_hashes
        return 0.0

    @property
    def MINHASH_BITS(self):
        return self._MINHASH_BITS