Karteek Sreenivasaiah

37 papers A* 2A 1B 5C 1Misc 2Journal 24Unranked 2
YearRankTypeTitle / Venue / Authors
2025 B conf
MFCS
Deepu Benson, Balagopal Komarath, Nikhil S. Mande, Nalli Sai Soumya, Jayalal Sarma, Karteek Sreenivasaiah
2025 J jnl
CoRR
Deepu Benson, Balagopal Komarath, Nikhil S. Mande, Nalli Sai Soumya, Jayalal Sarma, Karteek Sreenivasaiah
2024 A conf
STACS
Tameem Choudhury, Karteek Sreenivasaiah
2024 J jnl
Inf. Process. Lett.
Yogesh Dahiya, K. Vignesh, Meena Mahajan, Karteek Sreenivasaiah
2024 J jnl
CoRR
Nikhil S. Mande, Karteek Sreenivasaiah
2023 J jnl
Electron. Colloquium Comput. Complex.
Tameem Choudhury, Karteek Sreenivasaiah
2023 J jnl
Electron. Colloquium Comput. Complex.
Yogesh Dahiya, K. Vignesh, Meena Mahajan, Karteek Sreenivasaiah
2021 J jnl
SIAM J. Comput.
Nutan Limaye, Karteek Sreenivasaiah, Srikanth Srinivasan, Utkarsh Tripathi, S. Venkitesh
2019 A* conf
STOC
Nutan Limaye, Karteek Sreenivasaiah, Srikanth Srinivasan, Utkarsh Tripathi, S. Venkitesh
2019 J jnl
J. Comput. Syst. Sci.
Olaf Beyersdorff, Leroy Chew, Karteek Sreenivasaiah
2019 J jnl
J. ACM
Christian Ikenmeyer, Balagopal Komarath, Christoph Lenzen, Vladimir Lysikov, Andrey Mokhov, Karteek Sreenivasaiah
2018 conf
FSTTCS
Markus Bläser, Balagopal Komarath, Karteek Sreenivasaiah
2018 J jnl
CoRR
Markus Bläser, Balagopal Komarath, Karteek Sreenivasaiah
2018 A* conf
STOC
Christian Ikenmeyer, Balagopal Komarath, Christoph Lenzen, Vladimir Lysikov, Andrey Mokhov, Karteek Sreenivasaiah
2018 J jnl
CoRR
Nutan Limaye, Karteek Sreenivasaiah, Srikanth Srinivasan, Utkarsh Tripathi, S. Venkitesh
2018 J jnl
Electron. Colloquium Comput. Complex.
Nutan Limaye, Karteek Sreenivasaiah, Srikanth Srinivasan, Utkarsh Tripathi, S. Venkitesh
2017 B conf
FCT
Christian Engels, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2017 J jnl
CoRR
Christian Ikenmeyer, Balagopal Komarath, Christoph Lenzen, Vladimir Lysikov, Andrey Mokhov, Karteek Sreenivasaiah
2016 J jnl
Algorithmica
Meena Mahajan, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2016 J jnl
Electron. Colloquium Comput. Complex.
Christian Engels, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2016 J jnl
ACM Trans. Comput. Theory
Andreas Krebs, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2016 J jnl
ACM Trans. Comput. Theory
Anna Gál, Jing-Tang Jang, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2015 C conf
LATA
Olaf Beyersdorff, Leroy Chew, Karteek Sreenivasaiah
2015 J jnl
Electron. Colloquium Comput. Complex.
Meena Mahajan, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2014 J jnl
Electron. Colloquium Comput. Complex.
Olaf Beyersdorff, Leroy Chew, Karteek Sreenivasaiah
2014 Misc conf
COCOON
Meena Mahajan, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2014 J jnl
Theor. Comput. Sci.
Meena Mahajan, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2014 J jnl
Electron. Colloquium Comput. Complex.
Anna Gál, Jing-Tang Jang, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2013 B conf
MFCS
Andreas Krebs, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2013 J jnl
CoRR
Andreas Krebs, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2013 J jnl
Electron. Colloquium Comput. Complex.
Andreas Krebs, Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2013 J jnl
ACM Trans. Comput. Theory
Olaf Beyersdorff, Samir Datta, Andreas Krebs, Meena Mahajan, Gido Scharfenberger-Fabian, Karteek Sreenivasaiah, Michael Thomas, Heribert Vollmer
2012 conf
CATS
Meena Mahajan, Nitin Saurabh, Karteek Sreenivasaiah
2012 B conf
MFCS
Meena Mahajan, B. V. Raghavendra Rao, Karteek Sreenivasaiah
2012 Misc conf
COCOON
Nutan Limaye, Meena Mahajan, Karteek Sreenivasaiah
2012 J jnl
Electron. Colloquium Comput. Complex.
Olaf Beyersdorff, Samir Datta, Andreas Krebs, Meena Mahajan, Gido Scharfenberger-Fabian, Karteek Sreenivasaiah, Michael Thomas, Heribert Vollmer
2011 B conf
MFCS
Olaf Beyersdorff, Samir Datta, Meena Mahajan, Gido Scharfenberger-Fabian, Karteek Sreenivasaiah, Michael Thomas, Heribert Vollmer
redb/extractors/decompiler/bninja/analysis/strings.py
← Index redb/extractors/decompiler/bninja/analysis/strings.py python
from collections import Counter
import math

class StringAnalysis:
    def __init__(self, bv, functions):
        self.bv = bv
        self.functions = functions

    def entropy(self, s: str) -> float:
        """Compute Shannon entropy of a string."""
        if not s:
            return 0.0
        freq = Counter(s)
        length = len(s)
        return -sum((count / length) * math.log2(count / length) for count in freq.values())

    def analyze(self):
        """
        Extract unique strings from the binary.

        Deduplicates by (string, encoding) within the same binary, keeping the
        first occurrence (lowest offset). Cross-binary deduplication and
        aggregation is handled by ClickHouse materialized views.
        """
        strings = {}

        # Sort strings by their starting address
        sorted_entries = sorted(self.bv.strings, key=lambda e: e.start)

        for entry in sorted_entries:
            # Key is the string and its encoding
            key = (entry.value, entry.type.name)

            # Skip if this string (value + encoding) was already added.
            # Because entries are sorted by address, the first one is always kept.
            if key in strings:
                continue

            # Store only the first occurrence with schema-matching field names
            # entry.length is the raw byte length, len(entry.value) is decoded string length
            string_entry = {
                "string": entry.value,
                "string_raw": entry.raw,
                "string_encoding": entry.type.name,
                "string_offset": entry.start,
                "string_length": len(entry.value),
                "string_raw_length": entry.length,
                "string_entropy": self.entropy(entry.value),
            }

            strings[key] = string_entry

        # Return as list for export compatibility
        return list(strings.values())